如何在 R 中的 dygraph 标题中使用 UTF-8 字符

How to use UTF-8 characters in dygraph title in R

使用 Rstudio [Windows8],当我使用 dygraph 函数绘制时间序列时,尝试在主标题中使用 UTF-8 字符时出现问题。

library(dygraphs)
dygraph(AirPassengers, main = "Título")

这导致标题:"T?tulo"

我试图将 "Título" 转换为 utf-8 编码,但它不起作用。

你可以使用enc2utf8.

dygraph(AirPassengers, main = enc2utf8("Título"))

您需要确保您的区域设置支持您要使用的字符,并且文件以正确的编码保存。保存为 UTF-8 对我有用。

我能够在 Windows 7 中复制您的情况并尝试了很多东西。嵌入在 Rmarkdown 中,这是一个最小的工作示例。

```{r}
Sys.setlocale("LC_ALL","German")
#note that windows locale names are different from unix & mac, usually
#the name of nationality works here.
#also works with "Faroese", "Hungarian", and others who have this letter.
#the locale has to be set in a preceding block to take effect.
```

```{r}
Encoding("Título")
library(dygraphs)
dygraph(AirPassengers, main = "Título")
```

您可以尝试使用 Encoding() 赋予标题的编码。法罗语、匈牙利语和德语等语言将 "Título" 编码为拉丁语或未知,这两种语言似乎都不会对 dygraph 的 javascript 造成任何问题。 UTF-8 将其写为 <U+00ED>,这对 javascript 以及一些但不是所有其他函数都是一个问题。使用匹配的语言环境,转换为 @Michele 推荐的 utf-8 具有相同的结果。

此外,如果您在很多地方没有标题,可以在制作的 html/javascript 文件中手动查找并替换标题。问题发生在转换时,但如果文件已经制作,则可以成功更改标题变量。这封信在 Rstudio "Viewer" 输出中仍然有一个问号,但我建议定期为 javascript 制作整个文件,因为我在查看器 window.[= 中看到其他功能出现故障13=]