任意のデータセットを仮定してください。状況:すべての独立変数に対してforループを実行して、従属変数との関係(散布)プロットを作成しています。そして、PDFファイルとしてプロットを保存したいのですが、すでに達成している1つの個別ページのすべてのグラフではなく、1ファイルにつき1ページまたは2ページのpdfファイルに保存します。私は、次のような場合forループから1つのpdfページに複数のグラフを保存するR
を使用しています第一のdevのオプションを使用してみてください
library(ggplot2)
library(gridExtra)
pdf("one.pdf", onefile = TRUE)
for (i in 1:length(dataset))
{
new_plot[[i]]=print(ggplot(data=dataset, aes(x=dataset[[i]], y=loss))+geom_point(size=1, alpha=0.3)+
geom_smooth(method = lm)+
xlab(paste0(colnames(int[i]), '\n', 'R-Squared: ',round(cor(int[[i]],int$loss, use = 'complete.obs'), 2)))+
ylab("log(loss)") + theme_light())
plot_list = c(new_plot[[i]])
grid.arrange(plot_list)
}
dev.off()
第二ggsave
for (i in 1:length(dataset))
{
new_plot[[i]]=print(ggplot(data=dataset, aes(x=dataset[[i]], y=loss))+geom_point(size=1, alpha=0.3)+
geom_smooth(method = lm)+
xlab(paste0(colnames(int[i]), '\n', 'R-Squared: ',round(cor(int[[i]],int$loss, use = 'complete.obs'), 2)))+
ylab("log(loss)") + theme_light())
m=marrangeGrob(new_plot[[i]],nrow=2, ncol=2)
}
ggsave("one.pdf",m)
私は可能な場合もエラー
Error in gList(data = list(list(x = c(2213.18, 1283.6, 3005.09, 939.85, :
only 'grobs' allowed in "gList"
を受信した時刻の両方を使用してみてくださいグラフをどのページに2 * 2(例)で掲載するかを共有します。私はすべての助けに感謝します。アドバンスのおかげで!
を与え、それは本当に便利です、ありがとうございました。同じ解決法でaes_stringを使用しているときにy = log(y)を取る方法を教えてもらえますか? "thispredictor"がxとして渡されたため、aes_stringを使用する必要があります –
同じ方法で入力するだけですちょうど引用符の中にあります。私の例では、 'y =" log(Sepal.Width) "'を使うだけです。 'paste0(" log( "、thisPredictor、") ")などの関数を追加するためにpaste(または文字ベクトルを返す他の関数)を使うこともできます。 –