我使用了随机森林并尝试使用 varImpPlot() 来绘制重要特征
varImpPlot(random_fit, type = 1, main = "RF Feature Importance")
但这些点不太清晰,所以我该如何将其改为垂直线,或者填充这些点呢?
回答:
正如在 varImpPlot
的文档中提到的,该函数还可以接受以下参数:
… 其他图形参数将传递给
dotchart
。
例如,你可以用 bg
来填充点:
library(randomForest)set.seed(4543)data(mtcars)mtcars.rf <- randomForest(mpg ~ ., data=mtcars, ntree=1000, keep.forest=FALSE, importance=TRUE)varImpPlot(mtcars.rf, bg = "skyblue")
用 cex
增加它们的尺寸:
varImpPlot(mtcars.rf, bg = "skyblue", cex=2)
或者用 pch
改变它们的类型:
varImpPlot(mtcars.rf, bg = "skyblue", cex=2, pch=22)
据我所知,你无法添加垂直线(请求 type="l"
会导致错误);这可能是因为底层的基础R图形函数 dotchart
不支持线条。