R語言高清圖片輸出設置

以ggplot2等包為基礎的R語言可視化是科研人員非常喜愛的一個方式,不過我也在這個上遇到了些問題。就是導出高分辨率的圖片之后,插入到word里,就顯得模糊不清(壓縮得非常厲害)。如果不壓縮的話,word動輒100M以上。最近剛好有了一個解決方式,就來介紹下。

解決方案思路:R+Corel Draw

這也是某期刊圖的修改要求,必須提供.cdr文件。當然測試后發現,.cdr輸出的tif即使被壓縮,也能很清晰。

這里談談怎么做。首先R目前是沒法直接輸出.cdr格式的文件的,根據網上的經驗就是用emf這個格式,能夠輸出Corel Draw能讀取的矢量文件,導入后再做些微調。

但是R輸出emf沒有像tiff和jpeg那樣的語句,主要使用的是savePlot函數。

這里摘下R的幫助文檔再來解釋這個函數

Usage

savePlot(filename = "Rplot",
type = c("wmf", "emf", "png", "jpg", "jpeg", "bmp",
"tif", "tiff", "ps", "eps", "pdf"),
device = dev.cur(),
restoreConsole = TRUE)

Arguments

filename
The filename under which to save the plot. Tilde-expansion (see path.expand is supported.

type
The type of plot, Windows metafile, PNG, JPEG, BMP (Windows bitmap format), TIFF, PostScript or PDF.

device
A device number of a windows device, by default the current device.

restoreConsole
See the ‘Details’ section of windows.

一個參數一個參數來解釋吧。
filename:很好理解,就是你要輸出的圖片路徑和名稱,用字符串類型。如“C:/Rplot"。不必加后綴。
type:輸出格式。
device:Windows設備的設備編號,默認為當前設備,這個參數。
restoreConsole:這個參數也是跟windows圖形設備相關的。

實際使用時,后兩個參數默認就可以。主要是針對前兩個參數。

接下來用一個案例來展示下操作。使用的是R語言默認的mtcars數據。用plot繪圖和ggplot2繪圖各測試一遍。但是筆者就如網上所說在Rstudio中運行savePlot報錯。

事實上這個語句只能在原生的Rgui中運行。因此將R代碼存成腳本,在Rgui中直接用source調用寫好的腳本即可。

plot只需直接繪圖語句。而ggplot則需要多一句print語句,才能輸出圖片。

運行完后,打開corel draw,按下圖進行操作。

這樣就能把emf轉變成全部可編輯的矢量了。

當然Rstudio也有個方法。就是使用復制到剪貼板的功能,然后粘貼到Corel Draw里面。

這就是將R導入到Corel Draw前期工作。相比與之前壓縮得非常厲害的圖片,我感覺Corel Draw輸出的圖片質量非常高。此外,后面搜索時,我也發現了R的一個包:devEMF: EMF Graphics Output Device。可以輸出emf,這樣在Rstudio里也可以操作了。

參考博客:
R語言可以這么玩 |高質量圖片這樣導出!

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 2017年夏天開始學習R語言。 第1章 R語言介紹 1.1 R的獲取和安裝 下載Rgui:http://cran....
    彈跳騎士閱讀 7,995評論 0 10
  • 3.1 使用圖形 使用代碼保存圖形:保存為PDF—pdf(filename),其它格式:win.metafile(...
    壹亮3278閱讀 2,590評論 0 53
  • 《抗壓力》這本書中如果非要總結出一個關健字,那就是:視角。不管是消極情緒的三部曲(1.識別刺激源;2.有多少個角度...
    貓小開閱讀 743評論 0 50
  • 我們相遇在那年春天 天氣剛剛好 你的出現更顯的有些溫暖 可喜春厭夏的我 就在此時 ...
    蓋茨比m閱讀 217評論 0 0
  • 歲月真不是個東西。 我承認我并不能把生活歸置得妥當,只能在這七零八碎的空隙里感嘆逝者如斯夫,時間改變了你我,曾幾何...
    李曉欣閱讀 623評論 3 3