首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R plot3d染色

R plot3d染色
EN

Stack Overflow用户
提问于 2017-01-02 14:42:19
回答 1查看 5.7K关注 0票数 2

我正在使用来自plot3d()rgl制作三维散点图,使用三列,在一个数据框架中的样本。此外,我正在使用来自我的数据框架的第四列colorby (其中每个示例都以值(例如,10、11、12作为因子/级别)来对图中的点进行着色。

当使用plot()制作2D绘图时,我首先在plot()中设置palette(rainbow(3)),然后在plot()中设置col = colorby,然后再设置legend()。情节、色彩和传说都很好。

但是,当我重复plot3d()的最后一部分时,着色会混在一起,而不是将相同的颜色分配到与plot()相同的级别。此外,如果我使用legend3d("topright", legend = levels(colorby), col = rainbow(3))创建一个图例,它看起来与2D图例相同,但在3D图中着色显然是错误的。

我哪里出问题了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-02 19:06:23

在我看来,这是正确的:

代码语言:javascript
复制
df <- data.frame(x=1:9, y=9:1, z=101:109, colorby=gl(3,3))
palette(rainbow(3))
plot(x~y, df, col = df$colorby)
library(rgl)
with(df, plot3d(x,y,z, col = colorby))
legend3d("topright", legend = levels(df$colorby), col = levels(df$colorby), pch=19)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41428840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档