Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R autoplot在data.table中链接时将空白打印保存到png设备_R_Ggplot2_Data.table - Fatal编程技术网

R autoplot在data.table中链接时将空白打印保存到png设备

R autoplot在data.table中链接时将空白打印保存到png设备,r,ggplot2,data.table,R,Ggplot2,Data.table,我有一个data.table,其中有一列预测了一些值,我想用ggplot2::autoplot保存每个预测的绘图 我正在尝试这个(可复制的示例): 这让我觉得这是在{}中的命令链。下一个代码也可以工作(因为plot不适用于预测对象,所以我正在绘制x变量: a[, {png(paste0(id, ".png")); plot([[1]]); dev.off()}, by = id] 这让我想到了autoplot 我做错了什么,有效实现我想要的东西的方法是什么?如果不查看autoplot代码,这两

我有一个
data.table
,其中有一列预测了一些值,我想用
ggplot2::autoplot
保存每个预测的绘图

我正在尝试这个(可复制的示例):

这让我觉得这是在
{}
中的命令链。下一个代码也可以工作(因为
plot
不适用于预测对象,所以我正在绘制
x
变量:

a[, {png(paste0(id, ".png")); plot([[1]]); dev.off()}, by = id]
这让我想到了
autoplot


我做错了什么,有效实现我想要的东西的方法是什么?

如果不查看
autoplot
代码,这两个表达式之间的区别是隐藏的
打印
,这发生在第二种情况下,因为该表达式返回由
autoplot
创建的对象,然后返回R core“打印”(对于不同的对象可能意味着不同的东西)

因此,修复方法是调用
print
您自己:

a[, {png(paste0(id, ".png")); print(autoplot(y[[1]])); dev.off()}, by = id]
a[, {png(paste0(id, ".png")); plot([[1]]); dev.off()}, by = id]
a[, {png(paste0(id, ".png")); print(autoplot(y[[1]])); dev.off()}, by = id]