作者ewmm (两团肉的爸)
看板R_Language
标题[问题] 求助R与Latex中文呈现问题 致赠500元
时间Tue Nov 14 22:03:43 2017
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://webptt.com/cn.aspx?n=bbs/R_Language/M.1510668228.A.C35.html
1F:推 andrew43: 有latex板喔,有空去看看。 11/14 22:52
2F:推 bluecadence: 你的第一个问题,应该只发生在要输出成pdf档案才会发 11/14 23:34
3F:→ bluecadence: 出现是吗? 输出成 jpg 之类的档案不会发生,直接在 11/14 23:36
4F:→ bluecadence: 萤幕显示也不会有问题对吗? 我的FreeBSD系统也有这样 11/14 23:37
5F:→ bluecadence: 的症头。的确在ggsave里面使用 device=cairo_pdf 参 11/14 23:38
6F:→ bluecadence: 数後能够解决这个pdf字型问题。 11/14 23:40
7F:→ ewmm: 照您建议,我把cairo_pdf那一行改成ggsave("test_plot_chine 11/28 08:57
8F:→ ewmm: ese.pdf", m2, device=cairo_pdf),没有错误讯息,但pdf中, 11/28 08:58
9F:→ ewmm: 中文也没显示 11/28 08:59
10F:推 bluecadence: 这个问题可能需要从两个层面解决 1. 作业系统必须安 11/28 18:26
11F:→ bluecadence: 装 cairo 套件 (Vector graphics library with cross 11/28 18:27
12F:→ bluecadence: -device output support) 2.你的 R 当初在编译的时候 11/28 18:28
13F:→ bluecadence: (不管你是下载binary package 或是下载原始码自行 11/28 18:28
14F:→ bluecadence: compile) 必须要把 cairo support 编译进去 11/28 18:29
15F:→ bluecadence: 我会建议这样做 1. 先在 Mac 中把 cairo 装好 2. 自 11/28 18:32
16F:→ bluecadence: 行下载R的原始码进行编译,你的系统如果cairo安装正 11/28 18:34
17F:→ bluecadence: 确,编译R的时候(./configure 的步骤)会侦测到cairo 11/28 18:35
18F:→ bluecadence: 自动把cairo support编译进R套件中 11/28 18:37
19F:→ bluecadence: 我手边目前没有mac机器 但在FreeBSD 或 Linux 都是这 11/28 18:39
20F:→ bluecadence: 麽做。我相信MacOS和FreeBSD的行为应该有点类似。 11/28 18:41
21F:→ bluecadence: 你可以在R中下这个指令 "capabilities()" 然後把结果 11/28 19:17
22F:→ bluecadence: 贴上来吗? 11/28 19:17
23F:→ bluecadence: 如果你的R有编译cairo支援 应该要像这样 11/28 19:42
25F:→ ewmm: 谢谢,我使用capabilities指令结果如下 12/26 14:11