2011-08-19 52 views
4

我正在使用以下数据和代码来创建3D图,但是y轴的axes3d命令正在重复标签。我需要做什么不同才能使y轴仅显示ylabels列表中的文本?如何使用axis3d设置y轴标签?

这里是我的数据

"V2" "V3" "V4" "V5" "V6" "V7" "V8" "V9" "V10" "V11" "V12" 
"A" 0.04 0 -0.12 -0.11 0.07 -0.1 -0.64 -0.41 -0.33 -0.23 0.11 
"B" 0.04 0 -0.11 -0.08 0.08 -0.37 -0.52 -0.34 -0.33 -0.23 0.09 
"C" 0.03 -0.06 -0.13 -0.13 0 -0.12 0.14 0.01 -0.12 -0.02 0.12 
"D" 0.07 -0.06 -0.13 -0.12 -0.03 -0.12 0.15 0 -0.14 -0.07 0.16 

这里是代码

open3d() 
yred <- colorRampPalette(c("blue","red")) 
# par3d(windowRect=c(100,100,700,700),zoom=1.25) 
pm <- persp3d(z=t(d), col=rep(rep(yred(nrow(d)/1),each=1), each=(ncol(d)-1)), 
       axes=F, xlab="", ylab="", zlab="", box=T) 
axes3d("z", pos=c(0,1,0)) 
ylabels <- row.names(d) 
axis3d("y", nticks=length(ylabels), labels=ylabels) 

回答

1

我不知道为什么,但这个工程:

open3d() 
yred <- colorRampPalette(c("blue","red")) 
# par3d(windowRect=c(100,100,700,700),zoom=1.25) 
pm <- persp3d(z=t(d), col=rep(rep(yred(nrow(d)/1),each=1), each=(ncol(d)-1)), 
       axes=F, xlab="", ylab="", zlab="", box=T) 
axes3d("z", pos=c(0,1,0)) 
ylabels <- rownames(d) 
axis3d("y", at=seq(0,1, length = length(ylabels)), labels=ylabels, nticks=4) 
+0

这似乎解决了标签。谢谢。 – user338714