我想编译以下包含正常密度函数的R图的Rnw文件。
\documentclass{amsart}
\usepackage[a4paper]{geometry}
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<<setup, include=FALSE, cache=FALSE>>=
opts_chunk$set(dev = "pdf", comment = NA, fig.align='center', cache=FALSE, message=FALSE, background='white')
options(replace.assign=TRUE, width=85)
knit_hooks$set(fig=function(before, options, envir){if (before) par(mar=c(4,4,.1,.1),cex.lab=.95,cex.axis=.9,mgp=c(2,.7,0),tcl=-.3)})
@
<<prepare-data, include=FALSE>>=
@
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\begin{document}
This is a plot with an italian caption ``Densità'' that means ``Density''.
<<norm, echo = FALSE, fig.width=4, fig.height=3.5>>=
curve(dnorm(x), -4, 4, xlab = 'z', ylab = 'Densità')
@
\end{document}
该文件具有UTF-8编码。
然后我用R编译文件,用
编译knitrRscript -e "library(knitr); knit2pdf('~/Desktop/label.Rnw')"
我得到了带有“Densità”标签的正确情节(意大利语意为密度,最后一个字母带有重音)。
我正在使用MacOSX 10.10 Yosemite而我的R语言环境是
> sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-apple-darwin13.1.0 (64-bit)
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 base
loaded via a namespace (and not attached):
[1] tools_3.1.1
使用TeXShop来解决问题。我使用这里建议的knitr.engine:http://yihui.name/knitr/demo/editors/ 并编译文件label.Rnw。
现在在图中得到一个错误的标签,即“密度”变为“密度......”。 但是我在文中得到了正确的重音字母。
有谁知道为什么?