整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          python 讀取 excel 生成 html 頁面

          有天老板找我到辦公室跟我說要做一個商城,商城賣出去東西就有傭金可以拿。我聽著就頭大。老板打開電腦給我看了網站:你看一下這個網站,照著它的流程就可以擁有一個商城了。我靠過去一看,大概了解一下:原來是利用第三方工具就可以構建一個導購網站,只要消費者在網站領取優惠券就會自動跳轉到某bao的購買頁面,購買成功后就可以有傭金了。我看了一下覺得可以,只要不讓我敲代碼一切好說。于是我照著流程構建了一個網站,然后勾選了很多零食進行推廣,然后我就發現了一個問題:我只勾選了一些零食啊,商城怎么還有其它類型的商品?我思索了一下就明白了,這網站還是挺流氓的,還摻雜著其他人的推廣鏈接,我一想這樣不行,轉化率肯定低啊。果不其然,試用了一天就只有5個單子,因為公司的網站還是挺有流量的,所以這轉化率不可能這么低。老板看了一下,覺得沒什么用讓我把商城入口給關了,我只好照做,但是我心里對這流氓網站不服啊,于是我打算自己做一個導購網站。(最后還是要敲代碼(。?_?)/~~~)

          想法

          1. 在推廣平臺上下載一個商品清單的excel文檔,文檔的內容包含:商品的名稱、商品的主圖鏈接、商品分類、商品價格、商品推廣鏈接.....。
          2. 利用python讀取excel,獲得分類、商品信息的json文件。
          3. 創建一個html頁面讀取json文件,把分類和商品顯示出來,利用html中的錨點定位,點擊就會滾動到對應的分類商品,就可以選擇心儀的商品下單,從而達到推廣商品的作用了。

          行動

          1. 安裝xlrd

          cmd窗口: pip install xlrd
          

          2.創建index.py,導入模塊

          import xlrd
          

          3.打開Excel文件讀取數據

          wb= xlrd.open_workbook('文件路徑')
          

          4.獲取表格

          sheet1 = wb.sheet_by_index(0) #這里的excel文檔內只有一個表格,0代表第一個
          

          5.獲取表格的行數

          rows = sheet1.nrows
          

          6.獲取表格中的類目

          商品一級類目

          住宅家具

          影音電器

          影音電器

          美容護膚

          廚房電器

          運動服/休閑服裝

          餐飲具

          category0 = sheet1.col_values(4) #獲取列內容(類目),這里excel文檔的第四列是類目
          del category0[0] #刪除列表中的 "商品一級類目"
          category = sorted(set(category0),key=category0.index) #類目列表->去除重復
          

          7.整理數據

          [ 
           [
           分類名,
           [商品信息]
           ],
           [
           分類名,
           [商品信息]
           ]
          ]
          data = []
          for i,v in enumerate(category):
           data.append([v,[]])
          for i,v in enumerate(data):
           for x in range(rows):
           if v[0] == sheet1.cell(x,4).value:
           data[i][1].append(sheet1.row_values(x))
          

          8.導出json文件

          jsonData = json.dumps(data, ensure_ascii=False)
          with open('results.json', 'w',encoding="utf-8") as f:
           f.write(jsonData)
          

          9.運行index.py,獲得json文件

          cmd窗口:python index.py
          

          10.創建html頁面,并引用json文件

          <!DOCTYPE html>
          <html lang="en">
          <head>
           <meta charset="UTF-8">
           <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
           <script>//引用jquery
           $(function(){
          function color16(){//十六進制顏色隨機
           var r = Math.floor(Math.random()*256);
           var g = Math.floor(Math.random()*256);
           var b = Math.floor(Math.random()*256);
           var color = '#'+r.toString(16)+g.toString(16)+b.toString(16);
           return color;
           }
          var navo = '';//類目導航
          var info = '';//商品內容
          $.get('./results.json', function(data) {//請求json文件
           
           $.each(data, function(index, val) {
           navo+="<a href='#"+val[0]+"''>"+val[0]+"</a> "
           });//把json文件中的類目數組遍歷出來,并用錨定位
           $.each(data, function(index, val) {
           var div_title = "<div id='"+val[0]+"' style='float:left;'>";
           var div_content = "";
           $.each(val[1], function(index, val) {
           div_content+="<div style='background:"+color16()+"' onclick=\"location.href=\'"+val[21]+"\'\" class='pro_img'>"+val[1]+"<span class='money'>¥"+val[6]+"</span><\/div>"
           });
           var div_footer ="</div><br>";
           info+=div_title+div_content+div_footer
           });
          $('#nav').html(navo);//把導航顯示出來
          $('#content').html(info);//把商品顯示出來
           },'json');
           })
           
           </script>
           <style>
           #content{
           margin-top: 10px
           }
           .money{
           position: absolute;
           left: 0;
           bottom: 0;
           height: 30px;
           line-height: 30px;
           color: #e22a40;
           font-weight: 700
           }
           .pro_img{
           position: relative;
           float: left;
           width: 220px;
           height: 220px;
           line-height: 220px;
           text-align: center;
           border: 1px solid #eee;
           cursor: pointer;
           font-size: 30px;
           white-space:normal; 
           overflow:hidden; /*超過部分不顯示*/
                text-overflow:ellipsis; /*超過部分用點點表示*/
                white-space:nowrap;*//*不換行
           }
           </style>
          </head>
          <body>
          <div id="nav"></div>
          <div id="content"></div>
          </body>
          </html>
          

          效果

          https://fjxasdf.github.io/daogou (github比較卡)

          遺留問題

          1. 導購頁面沒有樣式,不夠美觀。
          2. 沒有顯示商品圖片,由于excel文檔中有1萬條商品信息,把一萬張圖片顯示出來太卡了。
          信我或關注微信號:獅范兒,回復:學習,獲取免費學習資源包。


          Excel文件轉成html頁面代碼

          main類:啟動類


          package com.test;
           
          import trans.toHtml;
           
          public class testToHtml {
           
          /**
           * @param args
           */
          public static void main(String[] args) {
          // TODO Auto-generated method stub
           toHtml th=new toHtml();
           // System.out.println(System.getProperty("java.library.path"));
           //-Djava.library.path=D:\jar\jacob_1.9
           th.excelToHtml("d:/excel/運維門戶通訊錄.xlsx", "d:/test.html");
          }
           
          }
          

          代碼:


          package trans;
           
          import java.io.BufferedReader;
          import java.io.BufferedWriter;
          import java.io.File;
          import java.io.FileInputStream;
          import java.io.FileNotFoundException;
          import java.io.FileWriter;
          import java.io.IOException;
          import java.io.InputStreamReader;
           
          import com.jacob.activeX.ActiveXComponent;
          import com.jacob.com.Dispatch;
          import com.jacob.com.Variant;
           
          public class toHtml {
           int WORD_HTML = 8;
           int WORD_TXT = 7;
           int EXCEL_HTML = 44;
           
           /**
           * WORD?HTML
           * @param docfile WORD ? ?· 
           * @param htmlfile ? HTML · 
           */
           public void wordToHtml(String docfile, String htmlfile)
          {
           ActiveXComponent app = new ActiveXComponent("Word.Application"); // word
           try
           {
           app.setProperty("Visible", new Variant(false));
           Dispatch docs = app.getProperty("Documents").toDispatch();
           Dispatch doc = Dispatch.invoke(docs,"Open",Dispatch.Method,new Object[] { docfile, new Variant(false),new Variant(true) }, new int[1]).toDispatch();
           Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {htmlfile, new Variant(WORD_HTML) }, new int[1]);
           Variant f = new Variant(false);
           Dispatch.call(doc, "Close", f);
           }
           catch (Exception e)
           {
           e.printStackTrace();
           }
           finally
           {
           app.invoke("Quit", new Variant[] {});
           }
           }
           
           /**
           * EXCEL?HTML
           * @param xlsfile EXCEL ? ?· 
           * @param htmlfile ? HTML · 
           */
           public void excelToHtml(String xlsfile, String htmlfile)
          {
           ActiveXComponent app = new ActiveXComponent("Excel.Application"); // excel
           try
           {
           app.setProperty("Visible", new Variant(false));
           Dispatch excels = app.getProperty("Workbooks").toDispatch();
           Dispatch excel = Dispatch.invoke(excels,"Open",Dispatch.Method,new Object[] { xlsfile, new Variant(false),new Variant(true) }, new int[1]).toDispatch();
           Dispatch.invoke(excel, "SaveAs", Dispatch.Method, new Object[] {htmlfile, new Variant(EXCEL_HTML) }, new int[1]);
           Variant f = new Variant(false);
           Dispatch.call(excel, "Close", f);
           }
           catch (Exception e)
           {
           e.printStackTrace();
           }
           finally
           {
           app.invoke("Quit", new Variant[] {});
           }
           }
           
           /**
           * /? ? 
           * @param folderPath ? ?· 
           * @param htmlfile ? HTML · 
           */
           public void delFolder(String folderPath)
          {
           try
           {
           delAllFile(folderPath); //? 
           String filePath = folderPath;
           filePath = filePath.toString();
           java.io.File myFilePath = new java.io.File(filePath);
           myFilePath.delete(); //? ? 
           } catch (Exception e) {e.printStackTrace();}
           }
           
           /**
           * /? ? ?
           * @param path ? ?· 
           */
           public boolean delAllFile(String path)
          {
           boolean flag = false;
           File file = new File(path);
           if (!file.exists())
           {
           return flag;
           }
           if (!file.isDirectory())
           {
           return flag;
           }
           String[] tempList = file.list();
           File temp = null;
           for (int i = 0; i < tempList.length; i++)
           {
           if (path.endsWith(File.separator))
           {
           temp = new File(path + tempList[i]);
           }
           else
           {
           temp = new File(path + File.separator + tempList[i]);
           }
           if (temp.isFile())
           {
           temp.delete();
           }
           if (temp.isDirectory())
           {
           delAllFile(path + "/" + tempList[i]);// ? ? ?
           delFolder(path + "/" + tempList[i]);// ? ? 
           flag = true;
           }
           }
           return flag;
           }
          }
          需要的jar包
          <<jacob.jar>>
          <<toHtml.java>>
          <<testToHtml.java>>
          

          來源網絡,侵權聯系刪除

          私信我或關注微信號:獅范兒,回復:學習,獲取免費學習資源包。

          能轉換:R圖和統計表轉成發表級的Word、PPT、Excel、HTML、Latex、矢量圖等

          R包export可以輕松的將R繪制的圖和統計表輸出到 Microsoft Office (Word、PowerPoint和Excel)、HTML和Latex中,其質量可以直接用于發表。

          • 你和PPT高手之間,就只差一個iSlide
          • Excel改變了你的基因名,30% 相關Nature文章受影響,NCBI也受波及


          特點

          1. 可以用命令將交互式R圖或ggplot2Latticebase R圖保存到Microsoft Word、Powerpoint或其他各種位圖或矢量格式。
          2. 完全可編輯的Powerpoint矢量格式輸出,支持手動整理繪圖布局。
          3. 統計分析的輸出保存為Excel、Word、PowerPoint、Latex或HTML文檔的表格形式。
          4. 自定義R輸出格式。

          安裝

          export包可以在Windows、Ubuntu和Mac上跨平臺運行。不過有些Mac發行版默認情況下沒有安裝cairo設備,需要自行安裝。如果Mac用戶已安裝XQuartz,這個問題就解決了,它可以從https://www.xquartz.org/免費獲得。

          官方CRAN發布 (以不能用)

          install.packages("export")

          從 Github 安裝 (推薦


          install.packages("officer")
          install.packages("rvg")
          install.packages("openxlsx")
          install.packages("ggplot2")
          install.packages("flextable")
          install.packages("xtable")
          install.packages("rgl")
          install.packages("stargazer")
          install.packages("tikzDevice")
          install.packages("xml2")
          install.packages("broom")
          install.packages("devtools")
          devtools::install_github("tomwenseleers/export")
          


          該包主要包括以下幾種轉換

          • graph2bitmap
          • graph2office
          • graph2vector
          • rgl2bitmap 轉換3D圖
          • table2office
          • table2spreadsheet
          • table2tex
          • graph2bitmap: 將當前R圖保存到bmp文件中
          • graph2png: 將當前R圖保存到png文件中
          • graph2tif: 將當前R圖保存到TIF文件中
          • graph2jpg: 將當前R圖保存為JPEG文件

          使用幫助信息如下

          graph2bitmap(x = NULL, file = "Rplot", fun = NULL, type = c("PNG","JPG", "TIF"),
                  aspectr = NULL, width = NULL, height = NULL, dpi = 300,scaling = 100,
                  font =ifelse(Sys.info()["sysname"] == "Windows", "Arial",
                  "Helvetica")[[1]], bg = "white", cairo = TRUE,
                  tiffcompression = c("lzw", "rle", "jpeg", "zip", "lzw+p", "zip+p"),
                  jpegquality = 99, ...)
          
          • aspectr: 期望縱橫比。如果設置為空,則使用圖形設備的縱橫比。
          • width: 所需寬度(英寸);可以與期望的縱橫比aspectr組合。
          • height: 所需高度(英寸);可以與期望的縱橫比aspectr組合。
          • scaling: 按一定比例縮放寬度和高度。
          • font: PNG和TIFF輸出中標簽所需的字體; Windows系統默認為Arial,其他系統默認為Helvetica。
          • bg: 所需的背景顏色,例如“白色”或“透明”。
          • cairo: 邏輯,指定是否使用Cairographics導出。
          • tiffcompression: 用于TIF文件的壓縮。
          • jpegquality: JPEG壓縮的質量。

          準備開始

          安裝完 export包后,先調用該包

          library(export)
          

          用ggplot2繪圖

          library(ggplot2)
          library(datasets)
          
          x=qplot(Sepal.Length, Petal.Length, data = iris,
                  color = Species, size = Petal.Width, alpha = I(0.7))
          

          qplot()的意思是快速作圖,利用它可以很方便的創建各種復雜的圖形,其他系統需要好幾行代碼才能解決的問題,用qplot只需要一行就能完成。

          使用半透明的顏色可以有效減少圖形元素重疊的現象,要創建半透明的顏色,可以使用alpha圖形屬性,其值從0(完全透明)到1(完全不透明)。更多ggplot2繪圖見ggplot2高效實用指南 (可視化腳本、工具、套路、配色) (往期教程更有很多生物信息相關的例子)。

          鳶尾花(iris)是數據挖掘常用到的一個數據集,包含150個鳶尾花的信息,每50個取自三個鳶尾花種之一(setosa,versicolourvirginica)。每個花的特征用下面的5種屬性描述萼片長度(Sepal.Length)、萼片寬度(Sepal.Width)、花瓣長度(Petal.Length)、花瓣寬度(Petal.Width)、類(Species)。

          在console里展示數據圖 (長寬比自己調節):

          導出圖形對象

          # 需運行上面的ggplot2繪圖
          # Create a file name
          # 程序會自動加后綴
          filen <- "output_filename" # or
          # filen <- paste("YOUR_DIR/ggplot")
          # There are 3 ways to use graph2bitmap():
          ### 1. Pass the plot as an object
          graph2png(x=x, file=filen, dpi=400, height = 5, aspectr=4)
          graph2tif(x=x, file=filen, dpi=400, height = 5, aspectr=4)
          graph2jpg(x=x, file=filen, dpi=400, height = 5, aspectr=4)
          

          導出當前繪圖窗口展示的圖

          ### 2. Get the plot from current screen device
          # 注意這個x,是運行命令,展示圖像
          x
          graph2png(file=filen, dpi=400, height = 5, aspectr=4)
          graph2tif(file=filen, dpi=400, height = 5, aspectr=4)
          graph2jpg(file=filen, dpi=400, height = 5, aspectr=4)
          

          導出自定義函數輸出的一組圖

          ### 3. Pass the plot as a functio
          plot.fun <- function(){
            print(qplot(Sepal.Length, Petal.Length, data = iris,
                        color = Species, size = Petal.Width, alpha = 0.7))
          }
          graph2png(file=filen, fun=plot.fun, dpi=400, height = 5, aspectr=4)
          graph2tif(file=filen, fun=plot.fun, dpi=400, height = 5, aspectr=4)
          graph2jpg(file=filen, fun=plot.fun, dpi=400, height = 5, aspectr=4)
          

          轉換后的圖形:

          與Office系列的交互

          大部分圖的細節修改都是用代碼完成的,不需要后續的修飾;但如果某一些修改比較特異,不具有程序的通用性特征,或實現起來比較困難,就可以考慮后期修改。比如用AI文章用圖的修改和排版。熟悉PPT的,也可以用PPT,這時R的圖導出PPT,就要用到graph2office系列函數了。

          graph2ppt: 將當前R圖保存到Microsoft Office PowerPoint/LibreOffice Impress演示文稿中。

          graph2doc:將當前的R圖保存到Microsoft Office Word/LibreOffice Writer文檔中。

          函數參數展示和解釋

          graph2office(x = NULL, file = "Rplot", fun = NULL, type = c("PPT", "DOC"),
                  append = FALSE, aspectr = NULL, width = NULL, height = NULL,scaling = 100,
                  paper = "auto", orient = ifelse(type[1] == "PPT","landscape", "auto"),
                  margins = c(top = 0.5, right = 0.5, bottom = 0.5, left= 0.5),
                  center = TRUE, offx = 1, offy = 1, upscale = FALSE, vector.graphic = TRUE, ...)
          
          • margins: 預設留白邊距向量。
          • paper: 紙張尺寸——“A5”至“A1”用于Powerpoint導出,或“A5”至“A3”用于Word輸出;默認“auto”自動選擇適合您的圖形的紙張大小。如果圖太大,無法在給定的紙張大小上顯示,則按比例縮小。
          • orient: 所需的紙張方向-“自動”,“縱向”或“橫向”; Word輸出默認為“自動”,Powerpoint默認為“橫向”。
          • vector.graphic: 指定是否以可編輯的向量DrawingML格式輸出。默認值為TRUE,在這種情況下,編輯Powerpoint或Word中的圖形時,可以先對圖形元素進行分組。如果設置為FALSE,則將該圖以300 dpi的分辨率柵格化為PNG位圖格式。(柵(shān)格化,是PS中的一個專業術語,柵格即像素,柵格化即將矢量圖形轉化為位圖。)

          同樣有3種導出方式

          # 需運行上面的ggplot2繪圖
          # Create a file name
          filen <- "output_filename" # or
          # filen <- paste("YOUR_DIR/ggplot")
          # There are 3 ways to use graph2office():
          ### 1. Pass the plot as an object
          # 導出圖形對象
          graph2ppt(x=x, file=filen)
          graph2doc(x=x, file=filen, aspectr=0.5)
          ### 2. Get the plot from current screen device
          # 導出當前預覽窗口呈現的圖
          x
          graph2ppt(file=filen, width=9, aspectr=2, append = TRUE)
          graph2doc(file=filen, aspectr=1.7, append =TRUE)
          ### 3. Pass the plot as a function
          # 導出自定義函數輸出的一系列圖
          graph2ppt(fun=plot.fun, file=filen, aspectr=0.5, append = TRUE)
          graph2doc(fun=plot.fun, file=filen, aspectr=0.5, append = TRUE)
          

          導出到office(ppt和word)中的圖形,是可編輯的:

          其它導出到ppt的例子(設置長寬比)

          graph2ppt(file="ggplot2_plot.pptx", aspectr=1.7)
          

          增加第二張同樣的圖,9英寸寬和A4長寬比的幻燈片 (append=T,追加)

          graph2ppt(file="ggplot2_plot.pptx", width=9, aspectr=sqrt(2), append=TRUE)
          

          添加相同圖形的第三張幻燈片,寬度和高度固定

          graph2ppt(file="ggplot2_plot.pptx", width=6, height=5, append=TRUE)
          

          禁用矢量化圖像導出

          graph2ppt(x=x, file=filen, vector.graphic=FALSE, width=9, aspectr=sqrt(2), append = TRUE)
          

          用圖填滿幻燈片

          graph2ppt(x=x, file=filen, margins=0, upscale=TRUE, append=TRUE)
          

          輸出矢量圖

          • graph2svg: 將當前的R圖保存為SVG格式
          • graph2pdf: 將當前的R圖保存為PDF格式
          • graph2eps: 將當前的R圖保存為EPS格式

          函數參數解釋

          graph2vector(x = NULL, file = "Rplot", fun = NULL, type = "SVG",aspectr = NULL,
                  width = NULL, height = NULL, scaling = 100,
                  font = ifelse(Sys.info()["sysname"] == "Windows",
                  "Arial","Helvetica")[[1]], bg = "white", colormodel = "rgb",
                  cairo = TRUE,fallback_resolution = 600, ...)
          
          • fallback_resolution: dpi中的分辨率用于柵格化不支持的矢量圖形。
          #需運行上面的ggplot2繪圖
          # Create a file name
          filen <- "output_filename" # or
          # filen <- paste("YOUR_DIR/ggplot")
          # There are 3 ways to use graph2vector():
          ### 1. Pass the plot as an object
          # 導出圖形對象
          graph2svg(x=x, file=filen, aspectr=2, font = "Times New Roman",
                    height = 5, bg = "white")
          graph2pdf(x=x, file=filen, aspectr=2, font = "Arial",
                    height = 5,  bg = "transparent")
          graph2eps(x=x, file=filen, aspectr=2, font = "Arial",
                    height = 5, bg = "transparent")
          # 導出當前預覽窗口呈現的圖
          ### 2. Get the plot from current screen device
          x
          graph2svg(file=filen, aspectr=2, font = "Arial",
                    height = 5, bg = "transparent")
          graph2pdf(file=filen, aspectr=2, font = "Times New Roman",
                    height = 5, bg = "white")
          graph2eps(file=filen, aspectr=2, font = "Times New Roman",
                    height = 5, bg = "white")
          # 導出自定義函數輸出的一系列圖
          ### 3. Pass the plot as a function
          graph2svg(file=filen, fun = plot.fun, aspectr=2, font = "Arial",
                    height = 5, bg = "transparent")
          graph2pdf(file=filen, fun=plot.fun, aspectr=2, font = "Arial",
                    height = 5, bg = "transparent")
          graph2eps(file=filen, fun=plot.fun, aspectr=2, font = "Arial",
                    height = 5, bg = "transparent")
          

          轉換3D圖形

          rgl2png: 將當前的rgl 3D圖形保存為PNG格式。

          rgl2bitmap(file = "Rplot", type = c("PNG"))
          
          # Create a file name
          filen <- tempfile("rgl") # or
          # filen <- paste("YOUR_DIR/rgl")
          # Generate a 3D plot using 'rgl'
          x = y = seq(-10, 10, length = 20)
          z = outer(x, y, function(x, y) x^2 + y^2)
          rgl::persp3d(x, y, z, col = 'lightblue')
          # Save the plot as a png
          rgl2png(file = filen)
          # Note that omitting 'file' will save in current directory
          

          生成的3D圖形:

          將生成的3D圖形保存為PNG格式:

          輸出統計結果到表格 table2spreadsheet

          • table2excel: 導出統計輸出到Microsoft Office Excel/ LibreOffice Calc電子表格中的一個表.
          • table2csv:將統計輸出以CSV格式導出到表中(“,”表示值分隔,“。”表示小數)
          • table2csv2: 將統計輸出以CSV格式導出到表中(“;”表示值分隔,”,”表示小數)
          table2spreadsheet(x = NULL, file = "Rtable", type = c("XLS", "CSV",
            "CSV2"), append = FALSE, sheetName = "new sheet", digits = 2,
            digitspvals = 2, trim.pval = TRUE, add.rownames = FALSE, ...)
          
          • sheetName: 一個字符串,給出創建的新工作表的名稱(僅針對type==”XLS”)。它必須是惟一的(不區分大小寫),不受文件中任何現有工作表名稱的影響。
          • digits:除具有p值的列外,要顯示所有列的有效位數的數目。
          • digitspvals:具有p值的列要顯示的有效位數的數目。
          # Create a file name
          filen <- "table_aov" # or
          # filen <- paste("YOUR_DIR/table_aov")
          # Generate ANOVA output
          fit=aov(yield ~ block + N * P + K, data = npk) # 'npk' dataset from base 'datasets'
          x=summary(fit)
          # Save ANOVA table as a CSV
          ### Option 1: pass output as object
          # 輸出對象
          table2csv(x=x,file=filen, digits = 1, digitspvals = 3, add.rownames=TRUE)
          # 屏幕輸出導出到文件
          ### Option 2: get output from console
          summary(fit)
          table2csv(file=filen, digits = 2, digitspvals = 4, add.rownames=TRUE)
          # Save ANOVA table as an Excel
          # Without formatting of the worksheet
          x
          table2excel(file=filen, sheetName="aov_noformatting", digits = 1, digitspvals = 3, add.rownames=TRUE)
          # 更多參數
          # With formatting of the worksheet
          table2excel(x=x,file=filen, sheetName="aov_formated", append = TRUE, add.rownames=TRUE, fontName="Arial", fontSize = 14, fontColour = rgb(0.15,0.3,0.75),  border=c("top", "bottom"), fgFill = rgb(0.9,0.9,0.9), halign = "center", valign = "center", textDecoration="italic")
          

          原始數據的表格:

          轉換格式之后的,在console中的數據:


          文件(csv和excel)中表格數據:

          導出為Word中的表,再也不用復制粘貼調格式了 table2office

          table2ppt: 導出統計輸出到Microsoft Office PowerPoint/ LibreOffice Impress演示文稿中的表

          table2doc: 將統計輸出導出到Microsoft Office Word/ LibreOffice Writer文檔中的表

          table2office(x = NULL, file = "Rtable", type = c("PPT", "DOC"),
            append = FALSE, digits = 2, digitspvals = 2, trim.pval = TRUE,
            width = NULL, height = NULL, offx = 1, offy = 1,
            font = ifelse(Sys.info()["sysname"] == "Windows", "Arial",
            "Helvetica")[[1]], pointsize = 12, add.rownames = FALSE)
          
          # Create a file name
          filen <- "table_aov"
          # filen <- paste("YOUR_DIR/table_aov")
          # Generate ANOVA output
          fit=aov(yield ~ block + N * P + K, data = npk) # 'npk' dataset from base 'datasets'
          # Save ANOVA table as a PPT
          ### Option 1: pass output as object
          x=summary(fit)
          table2ppt(x=x,file=filen, digits = 1, digitspvals = 3, add.rownames =TRUE)
          ### Option 2: get output from console
          summary(fit)
          table2ppt(x=x,file=filen, width=5, font="Times New Roman", pointsize=14, digits=4, digitspvals=1, append=TRUE, add.rownames =TRUE) # append table to previous slide
          # Save ANOVA table as a DOC file
          table2doc(x=x,file=filen, digits = 1, digitspvals = 3, add.rownames =TRUE)
          summary(fit)
          table2doc(file=filen, width=3.5, font="Times New Roman", pointsize=14,  digits=4, digitspvals=1, append=TRUE, add.rownames =TRUE) # append table at end of document
          

          將表格數據導出到ppt和word中:

          table2tex

          table2html: 導出統計輸出到HTML表。

          table2tex(x = NULL, file = "Rtable", type = "TEX", digits = 2,
            digitspvals = 2, trim.pval = TRUE, summary = FALSE, standAlone = TRUE,
            add.rownames = FALSE, ...)
          

          summary:是否匯總數據文件。

          standAlone:導出的Latex代碼應該是獨立可編譯的,還是應該粘貼到另一個文檔中。

          add.rownames:是否應該將行名添加到表中(在第一列之前插入一列)。

          # Create a file name
          filen <- tempfile(pattern = "table_aov") # or
          # filen <- paste("YOUR_DIR/table_aov")
          # Generate ANOVA output
          fit=aov(yield ~ block + N * P + K, data = npk) # 'npk' dataset from base 'datasets'
          x=summary(fit)
          # Export to Latex in standAlone format
          table2tex(x=x,file=filen,add.rownames = TRUE)
          # Export to Latex to paste in tex document
          summary(fit) # get output from the console
          table2tex(file=filen, standAlone = FALSE,add.rownames = TRUE)
          # Export to HTML
          table2html(x=x,file=filen) # or
          summary(fit) # get output from the console
          table2html(file=filen,add.rownames = TRUE)
          

          導出到html或tex中的表格數據:


          R統計和作圖

          • Graphpad,經典繪圖工具初學初探
          • 維恩(Venn)圖繪制工具大全 (在線+R包)
          • 在R中贊揚下努力工作的你,獎勵一份CheatShet
          • 別人的電子書,你的電子書,都在bookdown
          • R語言 - 入門環境Rstudio
          • R語言 - 熱圖繪制 (heatmap)
          • R語言 - 基礎概念和矩陣操作
          • R語言 - 熱圖簡化
          • R語言 - 熱圖美化
          • R語言 - 線圖繪制
          • R語言 - 線圖一步法
          • R語言 - 箱線圖(小提琴圖、抖動圖、區域散點圖)
          • R語言 - 箱線圖一步法
          • R語言 - 火山圖
          • R語言 - 富集分析泡泡圖
          • R語言 - 散點圖繪制
          • R語言 - 韋恩圖
          • R語言 - 柱狀圖
          • R語言 - 圖形設置中英字體
          • R語言 - 非參數法生存分析
          • R語言 - 繪制seq logo圖
          • WGCNA分析,簡單全面的最新教程
          • psych +igraph:共表達網絡構建
          • 一文學會網絡分析——Co-occurrence網絡圖在R中的實現
          • 一文看懂PCA主成分分析
          • 富集分析DotPlot,可以服
          • 基因共表達聚類分析和可視化
          • R中1010個熱圖繪制方法
          • 還在用PCA降維?快學學大牛最愛的t-SNE算法吧, 附Python/R代碼
          • 一個函數抓取代謝組學權威數據庫HMDB的所有表格數據
          • 文章用圖的修改和排版
          • network3D: 交互式桑基圖
          • network3D 交互式網絡生成
          • Seq logo 在線繪制工具——Weblogo
          • 生物AI插圖素材獲取和拼裝指導
          • ggplot2高效實用指南 (可視化腳本、工具、套路、配色)
          • 圖像處理R包magick學習筆記
          • SOM基因表達聚類分析初探
          • 利用gganimate可視化全球范圍R-Ladies(R社區性別多樣性組織)發展情況
          • 一分鐘繪制磷脂雙分子層:AI零基礎入門和基本圖形繪制
          • AI科研繪圖(二):模式圖的基本畫法
          • 你知道R中的賦值符號箭頭(<-)和等號(=)的區別嗎?
          • R語言可視化學習筆記之ggridges包
          • 利用ComplexHeatmap繪制熱圖(一)
          • ggplot2學習筆記之圖形排列
          • R包reshape2,輕松實現長、寬數據表格轉換
          • 用R在地圖上繪制網絡圖的三種方法
          • PCA主成分分析實戰和可視化 附R代碼和測試數據
          • iTOL快速繪制顏值最高的進化樹!
          • 12個ggplot2擴展包幫你實現更強大的可視化
          • 編程模板-R語言腳本寫作:最簡單的統計與繪圖,包安裝、命令行參數解析、文件讀取、表格和矢量圖輸出
          • R語言統計入門課程推薦——生物科學中的數據分析Data Analysis for the Life Sciences
          • 數據可視化基本套路總結
          • 你知道R中的賦值符號箭頭<-和等號=的區別嗎?
          • 使用dplyr進行數據操作30例
          • 交集intersect、并集union、找不同setdiff
          • R包reshape2,輕松實現長、寬數據表格轉換
          • 1數據類型(向量、數組、矩陣、 列表和數據框)
          • 2讀寫數據所需的主要函數、與外部環境交互
          • 3數據篩選——提取對象的子集
          • 4向量、矩陣的數學運算
          • 5控制結構
          • 6函數及作用域
          • 7認識循環函數lapply和sapply
          • 8分解數據框split和查看對象str
          • 9模擬—隨機數、抽樣、線性模型
          • 1初識ggplot2繪制幾何對象
          • 2圖層的使用—基礎、加標簽、注釋
          • 3工具箱—誤差線、加權數、展示數據分布
          • 4語法基礎
          • 5通過圖層構建圖像
          • 6標度、軸和圖例
          • 7定位-分面和坐標系
          • 8主題設置、存儲導出
          • 9繪圖需要的數據整理技術
          • 創建屬于自己的調色板
          • 28個實用繪圖包,總有幾個適合你
          • 熱圖繪制
          • R做線性回歸
          • 繪圖相關系數矩陣corrplot
          • 相關矩陣可視化ggcorrplot
          • 繪制交互式圖形recharts
          • 交互式可視化CanvasXpress
          • 聚類分析factoextra
          • LDA分析、作圖及添加置信-ggord
          • 解決散點圖樣品標簽重疊ggrepel
          • 添加P值或顯著性標記ggpubr
          • Alpha多樣性稀釋曲線rarefraction curve
          • 堆疊柱狀圖各成分連線畫法:突出組間變化
          • 沖擊圖展示組間時間序列變化ggalluvial
          • 桑基圖riverplot
          • 微生物環境因子分析ggvegan
          • 五彩進化樹與熱圖更配ggtree
          • 多元回歸樹分析mvpart
          • 隨機森林randomForest 分類Classification 回歸Regression
          • 加權基因共表達網絡分析WGCNA
          • circlize包繪制circos-plot
          • R語言搭建炫酷的線上博客系統
          • 28個實用繪圖包,總有幾個適合你
          • 熱圖繪制
          • R做線性回歸
          • 繪圖相關系數矩陣corrplot
          • 相關矩陣可視化ggcorrplot
          • 繪制交互式圖形recharts
          • 交互式可視化CanvasXpress
          • 聚類分析factoextra
          • LDA分析、作圖及添加置信-ggord
          • 解決散點圖樣品標簽重疊ggrepel
          • 添加P值或顯著性標記ggpubr
          • Alpha多樣性稀釋曲線rarefraction curve
          • 堆疊柱狀圖各成分連線畫法:突出組間變化
          • 沖擊圖展示組間時間序列變化ggalluvial
          • 桑基圖riverplot
          • 微生物環境因子分析ggvegan
          • 五彩進化樹與熱圖更配ggtree
          • 多元回歸樹分析mvpart
          • 隨機森林randomForest 分類Classification 回歸Regression
          • 加權基因共表達網絡分析WGCNA
          • circlize包繪制circos-plot
          • R語言搭建炫酷的線上博客系統
          • 維恩(Venn)圖繪制工具大全 (在線+R包)
          • R包circlize:柱狀圖用膩了?試試好看的弦狀圖
          • 獲取pheatmap聚類后和標準化后的結果
          • 增強火山圖,要不要試一下?
          • 一個震撼的交互型3D可視化R包 - 可直接轉ggplot2圖為3D
          • 贈你一只金色的眼 - 富集分析和表達數據可視化
          • 是Excel的圖,不!是R的圖
          • 道友,來Rstudio里面看動畫了
          • 用了這么多年的PCA可視化竟然是錯的!!!

          主站蜘蛛池模板: 亚洲日韩国产一区二区三区 | 国产成人片视频一区二区| 无码日韩精品一区二区三区免费| 亚洲.国产.欧美一区二区三区| 成人免费一区二区三区| 日韩有码一区二区| 国产免费一区二区三区免费视频 | 少妇人妻偷人精品一区二区| 日韩一区二区三区视频| 嫩B人妻精品一区二区三区| 3d动漫精品啪啪一区二区中| 中文字幕一区二区三区精彩视频| 亚洲一区二区三区四区视频| 国产成人欧美一区二区三区| 亚洲美女高清一区二区三区 | 国产福利电影一区二区三区,亚洲国模精品一区 | 国产精品综合AV一区二区国产馆| 一区二区三区在线免费看| 精品一区二区三人妻视频| 无码av不卡一区二区三区| 久久无码一区二区三区少妇| 亚洲第一区视频在线观看 | 精品视频无码一区二区三区| 无码视频一区二区三区| 无码精品人妻一区| 精品少妇ay一区二区三区| 无码日韩人妻AV一区免费l| 亚洲综合一区二区精品导航 | 国产精品亚洲一区二区三区久久 | 97久久精品午夜一区二区| 亚洲国产高清在线精品一区| 国产一区中文字幕在线观看| 无码少妇一区二区三区| 加勒比精品久久一区二区三区| 一区视频免费观看| 日韩一区二区三区四区不卡| 在线精品动漫一区二区无广告| 精品无码国产一区二区三区51安 | 亚洲一区二区三区无码国产| 精品国产一区二区三区2021| 波多野结衣免费一区视频|