図に変な線が入る問題

2019年07月13日 06:38

Windowsで起こる問題のようですが、ちょっと困ったことがありました。

Rで作図してメタファイルとしてコピーし、MS-PowerPointやMS-Wordに貼り付けると、変な線が入ることがあります。


以前に作った図をメタファイルとしてPowerPointに貼ってみます。



作図コマンドはこちら。

> boxplot(count ~ spray, data = InsectSprays)


一見すると何の問題もないのですが、このPowerPointファイルをPDFで保存すると・・・


あらら、変な線がたくさん入っています。ちなみに、元の図を貼り付けたOfficeファイルをMacで開いても同じ現象が起きました。WindowsとMacの互換性の問題かと思ったのですが、そうではなく、MS-Officeのバグだそうです(参照元:こちらの⑤)。Word、Excel、PowerPointのいずれも同じことが起きました。


対策として、最も簡単なのはメタファイルとしてコピーするのではなく、ビットマップとしてコピーしてからPowerPointに貼り付ける、という方法です。ただし、ラスタ形式なので、拡大すると粗さが目立ってしまいます。


そこで、「devEMF」というパッケージを使ってみます。

パッケージをインストールして読み込みます。次に、emfファイルを作成し、それから作図コマンドを入力します。そしてdev.off()で閉じると、図がemfファイルに保存されます。このemfファイルをOfficeのファイルにドラッグ&ドロップすると、PDFにしても変な線が入らなくなりました。よかった。

具体的には、例えばsample.emfという名前で保存する場合、

> emf(file="sample.emf")

> boxplot(count ~ spray, data = InsectSprays)
> dev.off()

とすることで、作業フォルダに「sample.emf」というファイルができます。これをOfficeで読み込めばよいわけです。


そのほか、PowerPointに貼ってからEPS形式で出力する方法(参考)もあります。

MS社がバグを解決してくれたら一番手っ取り早いのですが。

サイト内検索

お問い合わせ先

冨山 毅 Takeshi Tomiyama 〒739-8528 東広島市鏡山1-4-4 広島大学 統合生命科学研究科 082-424-7941 (直通)