看板 R_Language 關於我們 聯絡資訊
ctrl + y 可以刪除一整行,請將不需要的內容刪除 文章分類提示: - 問題: 當你想要問問題時,請使用這個類別。 建議先到 http://tinyurl.com/mnerchs 搜尋本板舊文。 - 分享: 當你看到別人的心得時,請使用這個類別。 版主鼓勵你幫版友歸納重點(選擇性)。 - 情報: 當你看到消息時,請使用這個類別。 版主鼓勵你幫版友歸納重點(選擇性)。 - 心得: 當你自己想要分享經驗時,請使用這個類別。 - 討論: 當你自己已經有答案,但是也想聽聽版友意見時。 [問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 使用者(已經有用R 做過不少作品) [問題敘述]: 我的電腦是Mac OS Sierra (1)我想用R軟體的ggplot2繪圖,並用gridExtra套件輸出於pdf檔 如果圖中沒有中文,完全沒問題。如果圖中有中文(例如標題有中文),則無法顯示或出現錯誤訊息 我想用中文楷體 已在電腦內安裝”Kaiti TC” 但始終無法正確印出 聽說裝Macport,Cairo可解決,但我一直無法成功 https://groups.google.com/forum/#!topic/r-sig-mac/7IrhMr1K264 (2) 另外一個問題是Latex中文問題 我是用TeXStudio 我可以打英文文件,做英文beamer 也可打簡單的中文文件,可用楷體 但嘗試做中文beamer,卻始終無法成功(沒有選擇字體) 如果有人能跟我在台大附近碰面,幫我解決這兩個問題 我請您喝杯茶吃點心,致贈500元新台幣 我方便的時間:週六白天或週日下午,台大新生南路對面或巷子內的餐廳 請留聯絡方式 [程式範例]: R程式碼 #rm(list=ls()) library(ggplot2) library(gridExtra) df1<-data.frame(x=1:2, y=3:4, z=5:6) #p1<-ggplot(df1, aes(x=x, y=y))+geom_line()+ggtitle("test1") #p2<-ggplot(df1, aes(x=x, y=y))+geom_line()+ggtitle("test2") p1<-ggplot(df1, aes(x=x, y=y))+geom_line()+ggtitle("測試") #Chinese title p2<-ggplot(df1, aes(x=x, y=y))+geom_line()+ggtitle("中文") #Chinese title p1<-p1+theme(text = element_text(family = "Kaiti TC")) p2<-p2+theme(text = element_text(family = "Kaiti TC")) p<-array(list(NA), dim=2) p[[1]]<-p1 p[[2]]<-p2 p_series <- lapply(1:(length(p)), function(.x) p[.x][[1]]) m2 <- marrangeGrob(p_series, nrow=2, ncol=1) ggsave("test_plot_chinese.pdf", m2) R錯誤訊息 "Saving 7.47 x 5.15 in image Error in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, : invalid font type In addition: There were 50 or more warnings (use warnings() to see the first 50)" [環境敘述]: R version 3.3.1 (2016-06-21) Platform: x86_64-apple-darwin13.4.0 (64-bit) Running under: OS X 10.12.6 (Sierra) locale: [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8 attached base packages: [1] stats graphics grDevices utils datasets methods [7] base loaded via a namespace (and not attached): [1] tools_3.3.1 [關鍵字]: 選擇性,也許未來有用 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.162.46.210 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1510668228.A.C35.html
andrew43: 有latex板喔,有空去看看。 11/14 22:52
bluecadence: 你的第一個問題,應該只發生在要輸出成pdf檔案才會發 11/14 23:34
bluecadence: 出現是嗎? 輸出成 jpg 之類的檔案不會發生,直接在 11/14 23:36
bluecadence: 螢幕顯示也不會有問題對嗎? 我的FreeBSD系統也有這樣 11/14 23:37
bluecadence: 的症頭。的確在ggsave裡面使用 device=cairo_pdf 參 11/14 23:38
bluecadence: 數後能夠解決這個pdf字型問題。 11/14 23:40
ewmm: 照您建議,我把cairo_pdf那一行改成ggsave("test_plot_chine 11/28 08:57
ewmm: ese.pdf", m2, device=cairo_pdf),沒有錯誤訊息,但pdf中, 11/28 08:58
ewmm: 中文也沒顯示 11/28 08:59
bluecadence: 這個問題可能需要從兩個層面解決 1. 作業系統必須安 11/28 18:26
bluecadence: 裝 cairo 套件 (Vector graphics library with cross 11/28 18:27
bluecadence: -device output support) 2.你的 R 當初在編譯的時候 11/28 18:28
bluecadence: (不管你是下載binary package 或是下載原始碼自行 11/28 18:28
bluecadence: compile) 必須要把 cairo support 編譯進去 11/28 18:29
bluecadence: 我會建議這樣做 1. 先在 Mac 中把 cairo 裝好 2. 自 11/28 18:32
bluecadence: 行下載R的原始碼進行編譯,你的系統如果cairo安裝正 11/28 18:34
bluecadence: 確,編譯R的時候(./configure 的步驟)會偵測到cairo 11/28 18:35
bluecadence: 自動把cairo support編譯進R套件中 11/28 18:37
bluecadence: 我手邊目前沒有mac機器 但在FreeBSD 或 Linux 都是這 11/28 18:39
bluecadence: 麼做。我相信MacOS和FreeBSD的行為應該有點類似。 11/28 18:41
bluecadence: 你可以在R中下這個指令 "capabilities()" 然後把結果 11/28 19:17
bluecadence: 貼上來嗎? 11/28 19:17
bluecadence: 如果你的R有編譯cairo支援 應該要像這樣 11/28 19:42
bluecadence: https://imgur.com/FeKaXp8 11/28 19:43
ewmm: 謝謝,我使用capabilities指令結果如下 12/26 14:11