rpy2 を使用して、Python パイプラインにグラフ生成を統合しようとしています。R内で生成された同じPDFは、明らかにrpy2内では機能しません。この単純なスクリプトは、読み取り可能な PDF ファイルを作成します。
#!/usr/bin/env R
library(ggplot2)
library(datasets)
p = ggplot(mtcars, aes(wt, mpg)) + xlab('Weight (lb/1000)') + ylab('Miles/(US) gallon')
pdf(file='mtcars.pdf')
p + geom_point(aes(colour=factor(cyl)))
dev.off()
同等の python コードは、どの PDF リーダーでも読み取ることができない 4 KB のファイルを生成します。
#!/usr/bin/env python
from rpy2 import robjects as ro
ro.r("library(ggplot2)")
ro.r("library(datasets)")
ro.r("p = ggplot(mtcars, aes(wt, mpg)) + xlab('Weight (lb/1000)') + ylab('Miles/(US) gallon')")
ro.r("pdf(file='mtcars.pdf')")
ro.r("p + geom_point(aes(colour=factor(cyl)))")
ro.r("dev.off()")
私は使用しています:
* Python 2.7.3
* R 2.15.2
* rpy2 2.3.6
* ggplot2 0.9.3.1
なぜこれが起こっているのですか?大変助かります。