R postscript()中文
我正在尝试设置R postscript()设备以显示汉字,但没有成功 我正在使用Macbook Pro Mountain Lion 10.8.3,其中包含以下RR postscript()中文,r,postscript,R,Postscript,我正在尝试设置R postscript()设备以显示汉字,但没有成功 我正在使用Macbook Pro Mountain Lion 10.8.3,其中包含以下RsessionInfo()信息: 下面是我的主要代码 postscript("圖9-35plotmath.ps", horizontal = FALSE, height = 6) plot(c(-pi, -pi/2, 0, pi/2, pi), 1:5, type = "n", xaxt = "n", main = expressi
sessionInfo()
信息:
下面是我的主要代码
postscript("圖9-35plotmath.ps", horizontal = FALSE, height = 6)
plot(c(-pi, -pi/2, 0, pi/2, pi), 1:5, type = "n", xaxt = "n", main = expression(paste(plain(sin) * phi, "與", plain(cos) * phi)), ylab = expression("sin" * phi), xlab = expression(paste("Phase Angle", phi)))
axis(side = 1, at = c(-pi, -pi/2, 0, pi/2, pi), labels = expression(-pi, -pi/2, 0, pi/2, pi))
for(i in 1:5)
{
text(-2.5, i, substitute(list(xi, eta) == group("(", list(x, y), ")"), list(x = i, y = i+1)))
}
text(-1.7, 5, expression("一階微分"== {f * minute}(x)), adj = 0)
text(-1.7, 4, expression("二階微分"== {f * second}(x)), adj = 0)
text(-1.7, 3, pos = 4, expression(hat(beta) == (X^t * X)^{-1} * X^t *y))
text(-1.7, 2, pos = 4, expression(bar(x) == sum(frac(x[i], n), i == 1, n)))
text(-1.7, 1.2, pos = 4, expression(paste(frac(1, sigma*sqrt(2*pi)), " ", plain(e)^{frac(-(x-mu)^2, 2*sigma^2)})), cex = 1.2)
text(0.5, 4.6, pos = 4, expression(prod(plain(P)(X == k), k = 1, n)))
text(0.5, 4, pos = 4, expression(integral(f(x)*dx, a,b)))
text(0.5, 3, pos = 4, expression(union(A[i], i == 1, n)))
text(0.5, 2, pos = 4, expression(intersect(A[i], i == 1, n)))
text(0.5, 1, pos = 4, expression(lim(f(x), x %->% 0)))
text(2, 4.5, pos = 4, expression(min(f(x), x > 0)))
text(1, 3.5, pos = 4, expression(Y == beta[0] + list(beta[1]*X[1], ..., beta[p-1]*X[p-1])))
text(1.5, 2.5, pos = 4, expression(S^2 == sqrt(frac(sum((X[i]=bar(x))^2), n-1))))
dev.off()
上述操作不起作用,生成的postscript文件为所有这些汉字提供了[…]。然后,我尝试了以下方法:
在postscript()中使用现有的GB1字体。它给了我一个.ps文件,Mac Preview、Ghostscript和Photoshop无法打开它
postscript("圖9-35plotmath.ps", horizontal = FALSE, height = 6, fonts=c("GB1"))
plot(c(-pi, -pi/2, 0, pi/2, pi), 1:5, type = "n", xaxt = "n", family = "GB1", main = expression(paste(plain(sin) * phi, "與", plain(cos) * phi)), ylab = expression("sin" * phi), xlab = expression(paste("Phase Angle", phi)))
...............(omitted)
text(-1.7, 5, family = "GB1", expression("一階微分"== {f * minute}(x)), adj = 0)
text(-1.7, 4, family = "GB1", expression("二階微分"== {f * second}(x)), adj = 0)
..............(omitted)
我还尝试使用CIDFont()添加一些字体,但它仍然提供了一个根本无法打开的.ps文件
song = CIDFont("SimSun", "GBK-EUC-H", "GBK", "")
postscriptFonts(song = song)
postscript("圖9-35plotmath.ps", horizontal = FALSE, height = 6, family="song")
plot(c(-pi, -pi/2, 0, pi/2, pi), 1:5, type = "n", xaxt = "n", family = "song", main = expression(paste(plain(sin) * phi, "與", plain(cos) * phi)), ylab = expression("sin" * phi), xlab = expression(paste("Phase Angle", phi)))
..............(omitted)
text(-1.7, 5, family = "song", expression("一階微分"== {f * minute}(x)), adj = 0)
text(-1.7, 4, family = "song", expression("二階微分"== {f * second}(x)), adj = 0)
.............(omitted)
这两种方法都没有警告,但无法打开.ps文件
我发现很难理解postscript()中的字体和族定义,其中par(family=“SimSun”)对在pdf()和png()设备中显示和保存以下内容没有任何问题
我需要生成一个用于高质量打印的postscript文件
再次感谢
SS这就是保罗·穆雷尔和布赖恩·里普利在他们的演讲中所做的 为了记录在案,drammock提供的代码在Mac 10.6.8上的R3.0.0中运行,在MacGhostView中打开时会产生以下结果: 编辑:您可以通过以下方式检查postscript设备可用的字体:
names(postscriptFonts())
这就是保罗·莫雷尔和布赖恩·里普利在他们的作品中所做的 为了记录在案,drammock提供的代码在Mac 10.6.8上的R3.0.0中运行,在MacGhostView中打开时会产生以下结果: 编辑:您可以通过以下方式检查postscript设备可用的字体:
names(postscriptFonts())
cairo\u ps()
适用于我的Mac电脑,两种电脑都有基本图形:
cairo_ps(filename="foo.eps", family="LiSong Pro")
plot.new()
text(0.5, 0.5, "這是漢字")
dev.off()
。。。和网格:
library(grid)
cairo_ps(filename="foo.eps", family="LiSong Pro")
plot.new()
grid.text("這是漢字")
dev.off()
cairo\u ps()
适用于我的Mac电脑,两种电脑都有基本图形:
cairo_ps(filename="foo.eps", family="LiSong Pro")
plot.new()
text(0.5, 0.5, "這是漢字")
dev.off()
。。。和网格:
library(grid)
cairo_ps(filename="foo.eps", family="LiSong Pro")
plot.new()
grid.text("這是漢字")
dev.off()
我认为你可能做得更好,把它简化成一个简单的例子。程序摘要已经是最短的,省略了许多细节。省略“细节”是掩盖错误的有效方法。请生成完成任务或产生错误的代码。我认为如果将其简化为一个简单的示例,您可能会做得更好。程序摘要已经是最短的,省略了许多细节。省略“细节”是隐藏错误的有效方法。请生成完成任务或产生错误的代码。谢谢。我试过你的方法,但还是没成功。ps文件已创建,但当我打开它时,绘图为空,没有任何中文字符。我不知道是否还有其他设置?我不知道该告诉你什么。我刚刚复制并粘贴了您的确切代码,将
postscript()
行替换为cairo\p(“圖9-35plotmath.ps“,family=“LiSong Pro”)
,我在绘图标题和两个text()
调用中看到了汉字。我使用的是一台运行OSX 10.6.8的iMac,带有旧版本的R(2.15.1),平台x86_64-apple-darwin9.8.0/x86_64,这可能就是原因。我正在使用OSX 10.8.3和R3.0。事实上,我不喜欢使用新版本,只是因为我的旧MacBookPro 2009屏幕坏了。无论如何,让我搜索一些R3.0发行说明,看看会发生什么。一个问题,在执行上述命令之前,您是否创建(使用CIDFont())LiSong pro字体?我输入了postscriptFonts(),李松Pro不是原始字体。否。李松Pro是一种opentype字体。cairo_ps()设备不仅限于使用postscript字体。谢谢。我试过你的方法,但还是没成功。ps文件已创建,但当我打开它时,绘图为空,没有任何中文字符。我不知道是否还有其他设置?我不知道该告诉你什么。我刚刚复制并粘贴了您的确切代码,将postscript()
行替换为cairo\p(“圖9-35plotmath.ps“,family=“LiSong Pro”)
,我在绘图标题和两个text()
调用中看到了汉字。我使用的是一台运行OSX 10.6.8的iMac,带有旧版本的R(2.15.1),平台x86_64-apple-darwin9.8.0/x86_64,这可能就是原因。我正在使用OSX 10.8.3和R3.0。事实上,我不喜欢使用新版本,只是因为我的旧MacBookPro 2009屏幕坏了。无论如何,让我搜索一些R3.0发行说明,看看会发生什么。一个问题,在执行上述命令之前,您是否创建(使用CIDFont())LiSong pro字体?我输入了postscriptFonts(),李松Pro不是原始字体。否。李松Pro是一种opentype字体。cairo_ps()设备不仅限于使用postscript字体。感谢您的示例。但我希望使用postscript设备示例。显然,下一步是安装正确的字体,并使用postscript或cairo_ps设备运行示例。我尝试使用CIDfont安装SimSun,但没有成功。如果你成功了,你能帮助分享编码吗?字体/系列在postscript()设备中是非常令人困惑的概念。我发布的pdf输出中的字符符号是否正确?您应该意识到,如果没有安装相同的字体集,那么无论您使用什么查看器,都可能存在困难,对吗?是的。它显示相同的字符。当我用postscript替换pdf时,它会显示以下错误:grid.Call.graphics中的错误(L_text,as.graphicsAnnot(x$label)、x$x、x$y、:postscript()中不包含族“CNS1”)设备。绘图仅显示英文字符感谢您的示例。但我希望使用postscript设备示例。显然,下一步是安装正确的字体,并使用postscript或cairo_ps设备运行示例。我尝试使用CIDfont安装SimSun,但未成功。如果成功,您能帮助共享此示例吗e编码?字体/系列在postscript()设备中是非常令人困惑的概念。我发布的pdf输出中的字符符号是否正确?您应该意识到,无论您使用什么查看器,都可能存在困难