私は自分のデータの探索的な分析をしており、ggplotを使って複数のグラフィックをプロットする必要があります。グラフィックスの量は本当に巨大です(206ステーション)、必要なページ数を超えて1ページあたり8行と1列にプロットしたいと思いました。私は、ビューポートやgrid.arrangeのような関数を認識していますが、私はそれらをこの場合に動作させるように管理していません。私はすでにlayout()やpar(mfrow = c(8,1))がggplotでは動作しないことに気がついていますが、コードの一部を私が迷惑にならない場所に送ります。どんな助けでも大歓迎です!複数のグラフを複数のページにまたがるggplotを使用
pdf('test.pdf', width=21, height=27)
par(mfrow=c(8,1))
for(i in levels(tab$Station))
{
print(ggplot(tab[tab$Station==i], aes(x=Date)) +
geom_line(aes(y=Tmin), col="blue", size=0.1) +
geom_line(aes(y=Tmax), col="red", size=0.1) +
geom_text(aes(x=as.Date('2010-01-01'), y=45), label=i) +
ylim(0, 45) +
scale_x_date(labels = date_format("%Y")) +
theme_bw() +
theme(
plot.background = element_blank()
,panel.grid.major = element_blank()
,panel.grid.minor = element_blank()
,panel.border = element_rect(color = 'black')
,panel.background = element_blank()
)
)
}
dev.off()
こんにちはJose、これを再現可能な例にしてもよろしいですか?これは、一般的に、コードをつかんで実行できるように、おもちゃのデータを提供することを意味します。多くの場合、人々はこれを行うために 'data()'関数を使います。例えば 'data(mtcars)'は 'mtcars'のdata.frameをメモリにロードします。 – Statwonk
@baptisteの答えはうまくいったのですか? –
これは古い質問ですが、ggforceパッケージでfacet_wrap_paginate関数を使用してみてください。 https://cran.r-project.org/web/packages/ggforce/ggforce.pdfのヘルプを参照してください。これが私の同様の問題を解決しました。 –