njhui
试着使用命令‘persp’画个几何图形,集合图形为simplex,即$x_1+x_2+x_3=1, x_,x_2,x_3\geq 0$. 但有两个问题:
1. 不能在三角形区域内打网格。即x_3会出现小于零。
2. 定义参数box=FALSE,则axis也没了。我只想要坐标不要合子
请教有没有什么方法解决,或有其他的命令可以方便使用。或者说怎样可以建立
一个什么图都没有的三维坐标,然后我就在上面画三条线来实现simplex,不知有没有方法
可以这样实现。
谢谢!
yihui
给你一个有点tricky的示例吧:
x=y=seq(0,1,.01)
z=outer(x,y,function(x,y)1-x-y)
cl=matrix(1,length(x)-1,length(y)-1)
cl[lower.tri(cl)]=0
pm=persp(x,y,z,ticktype='detailed',col=apply(cl,1,rev),theta=-30,border=NA)
后面可以接着用trans3d()望图里面添加点、线等元素。