绘制尺寸适合数据点数的点(cex)

时间:2014-06-11 16:34:26

标签: r plot tree

我从tree分析得到以下数据:

train = sample(1:nrow(dd),1010)  
yhat1 <- predict(tree.model1,newdata=dd[-train,])
v10.test <- dd$v10[-train]

dd是我的data.frame,v10是(离散)响应变量,在1到10之间变化,train是从我的数据帧中提取的样本。

我想使用实际测试值yhat1绘制预测v10.test,其中点大小考虑了分配给yhat1的实际test.values的数量预测。

因此:

plot(yhat1, v10.test, cex = ???)

我需要的cex的值可以从表对象中提取,但我不知道如何。有什么想法吗?

table(yhat1, dd.test)
                 v10.test
yhat1               0  1  2  3  4  5  6  7  8  9 10
  2.99479166666667 17 26  7 21 10  8  7  7  8  3  6
  4.36725663716814  8 15 21 14 14 14 13 12  4  5  4
  4.75              1  1  3  1  0  2  2  2  1  1  0
  4.82710280373832  6 10  5 11  7 11 11 18 22  3  2
  5.73684210526316  1  5  1  9  7 13 10  7 12  7 12
  6.68              0  1  0  1  0  3  1  1  0  0  1
  6.92045454545455  0  2  3  2  5  5  4  7  6  9  6

2 个答案:

答案 0 :(得分:1)

我玩得更多了,事实证明我的主要问题不是表格,而是pch的标准设置和点的标准尺寸,这使得结果图无法解释。

这样做的方法就是

plot(yhat1, dd.test, pch = 20, cex = table(yhat1,v10.test)/10)

这就是诀窍(并显示数据适合程度有多差)

答案 1 :(得分:1)

当您希望点的大小依赖于其他变量时,symbols函数可能优于使用plotcex。请注意,在使用变量的平方根来确定大小时,通常会得到最佳表示(以便区域成比例)。