我已经加载了一些训练集,并希望将featurePlot
应用于它。
如果我直接从RStudio
中的控制台进行操作,则可以正常工作 - 某些情节显示在RStudio
的情节面板中。
虽然看起来它是异步工作的。
如果我希望从脚本运行它,我会失败:
library(ISLR); library(ggplot2); library(caret);
data(Wage)
training<-Wage;
##filename <- sprintf("images/wage%%03d.png")
##png(filename)
featurePlot(x=training[,c("age","education","jobclass")],
y = training$wage,
plot="pairs")
##dev.off()
没有任何图表出现,如果写入文件未注释,则会显示空文件。
如何从脚本运行featurePlot
呢?可能我应该以某种方式等待它?
答案 0 :(得分:3)
最好将绘图存储在对象obj
中,然后打印此对象print(obj)
,因为featurePlot
是生成lattice
图形的快捷方式。你可以尝试:
library(ISLR)
library(ggplot2)
library(caret)
data(Wage)
training <- Wage
filename <- sprintf("images/wage%%03d.png")
obj <- featurePlot(x=training[,c("age","education","jobclass")],
y = training$wage,
plot="pairs")
png(filename)
print(obj)
dev.off()