[問題] 求助R與Latex中文呈現問題 致贈500元

看板R_Language作者 (兩團肉的爸)時間8年前 (2017/11/14 22:03), 編輯推噓3(3022)
留言25則, 3人參與, 7年前最新討論串1/2 (看更多)
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

11/14 22:52, 8年前 , 1F
有latex板喔,有空去看看。
11/14 22:52, 1F

11/14 23:34, 8年前 , 2F
你的第一個問題,應該只發生在要輸出成pdf檔案才會發
11/14 23:34, 2F

11/14 23:36, 8年前 , 3F
出現是嗎? 輸出成 jpg 之類的檔案不會發生,直接在
11/14 23:36, 3F

11/14 23:37, 8年前 , 4F
螢幕顯示也不會有問題對嗎? 我的FreeBSD系統也有這樣
11/14 23:37, 4F

11/14 23:38, 8年前 , 5F
的症頭。的確在ggsave裡面使用 device=cairo_pdf 參
11/14 23:38, 5F

11/14 23:40, 8年前 , 6F
數後能夠解決這個pdf字型問題。
11/14 23:40, 6F

11/28 08:57, 8年前 , 7F
照您建議,我把cairo_pdf那一行改成ggsave("test_plot_chine
11/28 08:57, 7F

11/28 08:58, 8年前 , 8F
ese.pdf", m2, device=cairo_pdf),沒有錯誤訊息,但pdf中,
11/28 08:58, 8F

11/28 08:59, 8年前 , 9F
中文也沒顯示
11/28 08:59, 9F

11/28 18:26, 8年前 , 10F
這個問題可能需要從兩個層面解決 1. 作業系統必須安
11/28 18:26, 10F

11/28 18:27, 8年前 , 11F
裝 cairo 套件 (Vector graphics library with cross
11/28 18:27, 11F

11/28 18:28, 8年前 , 12F
-device output support) 2.你的 R 當初在編譯的時候
11/28 18:28, 12F

11/28 18:28, 8年前 , 13F
(不管你是下載binary package 或是下載原始碼自行
11/28 18:28, 13F

11/28 18:29, 8年前 , 14F
compile) 必須要把 cairo support 編譯進去
11/28 18:29, 14F

11/28 18:32, 8年前 , 15F
我會建議這樣做 1. 先在 Mac 中把 cairo 裝好 2. 自
11/28 18:32, 15F

11/28 18:34, 8年前 , 16F
行下載R的原始碼進行編譯,你的系統如果cairo安裝正
11/28 18:34, 16F

11/28 18:35, 8年前 , 17F
確,編譯R的時候(./configure 的步驟)會偵測到cairo
11/28 18:35, 17F

11/28 18:37, 8年前 , 18F
自動把cairo support編譯進R套件中
11/28 18:37, 18F

11/28 18:39, 8年前 , 19F
我手邊目前沒有mac機器 但在FreeBSD 或 Linux 都是這
11/28 18:39, 19F

11/28 18:41, 8年前 , 20F
麼做。我相信MacOS和FreeBSD的行為應該有點類似。
11/28 18:41, 20F

11/28 19:17, 8年前 , 21F
你可以在R中下這個指令 "capabilities()" 然後把結果
11/28 19:17, 21F

11/28 19:17, 8年前 , 22F
貼上來嗎?
11/28 19:17, 22F

11/28 19:42, 8年前 , 23F
如果你的R有編譯cairo支援 應該要像這樣
11/28 19:42, 23F

11/28 19:43, 8年前 , 24F

12/26 14:11, 7年前 , 25F
謝謝,我使用capabilities指令結果如下
12/26 14:11, 25F
文章代碼(AID): #1Q2lV4mr (R_Language)
文章代碼(AID): #1Q2lV4mr (R_Language)