環境:
Mac OS 10.8.2、プラットフォームx86_64-apple-darwin9.8.0 / x86_64(64ビット)のR v。2.15.1、デフォルトのエンコーディングとしてUTF-8を使用するように設定されたRStudioIDE。OSもUTF-8を使用します。
> Sys.getlocale(category = "LC_ALL")
[1] "sk_SK.UTF-8/sk_SK.UTF-8/sk_SK.UTF-8/C/sk_SK.UTF-8/sk_SK.UTF-8"
目的:
R HTML(.Rhtml)ファイルからHTMLファイルを生成します。このファイルには、šやčなどの拡張ラテン文字を含むプロットが含まれています。
問題:
Knit HTMLをクリックすると、出力は次のようになります。
plot(1:2, main = "šč")
## Warning: conversion failure on 'šč' in 'mbcsToSbcs': dot substituted for
##
## Warning: conversion failure on 'šč' in 'mbcsToSbcs': dot substituted for
##
## Warning: conversion failure on 'šč' in 'mbcsToSbcs': dot substituted for
##
## Warning: conversion failure on 'šč' in 'mbcsToSbcs': dot substituted for
## <8d>
**Plot with correct characters despite the warnings.**
質問:
問題の原因とその解決方法は?結果のファイルに表示される警告を少なくとも取り除くにはどうすればよいですか?
絶望的なメモ:
私は過去1〜2時間解決策を探していて、多くの同様のケースを見つけ、多くの異なる潜在的な解決策を試しました(多くは、Sweaveだけを使用した場合と同じようにコックアップされるPDF出力に関連しています)。絶望的。
2012年11月9日に編集:
@metasequoiaによって提案されたソリューションEncoding()
は機能しますが、コードを印刷する必要があることを考えると、できればその関数なしで、関数を使用して@nograpesによって提供されるソリューションをお勧めしますpdf.options()
。
それは興味深いですが、
<!--begin.rcode
pdf.options(encoding='ISOLatin2.enc')
plot(cars, main="Ťažký")
end.rcode-->
同じ警告を生成します、
<!--begin.rcode
pdf.options(encoding='ISOLatin2.enc')
end.rcode-->
<!--begin.rcode
plot(cars, main="Ťažký")
end.rcode-->
期待どおりに動作します。何故ですか?Rでコマンドを実行するときは、年表が重要だと思いました。
だから、私の目的のための明確な解決策は置くことです
<!--begin.rcode echo="FALSE"
pdf.options(encoding='ISOLatin2.enc')
end.rcode-->
私の各コードの冒頭に。