Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有R中不同变量区域的三维散点图_R_Ggplot2_Plot3d - Fatal编程技术网

具有R中不同变量区域的三维散点图

具有R中不同变量区域的三维散点图,r,ggplot2,plot3d,R,Ggplot2,Plot3d,我有一个数据集,每个条目都包含一种形式的数据(x0,x1,y0,y1,…) 假设x0,x1是成本,y0,y1是时间 我想绘制一个散点图,其中每个条目都使用一个“气泡”来显示在2D空间中(x0,x1,y0,y1)捕获的区域,即在x轴上区域[x0,x1],在y轴上区域[y0,y1] 更新 例如,考虑这个框架 x0 x1 y0 y1 1 2 2 3 1.5 2 2 3.5 如何绘制这些区域 另外,如果我想绘制表单的3D区域,该怎么办 x0 x1

我有一个数据集,每个条目都包含一种形式的数据(
x0,x1,y0,y1
,…)

假设
x0,x1
是成本,
y0,y1
是时间

我想绘制一个散点图,其中每个条目都使用一个“气泡”来显示在2D空间中(
x0,x1,y0,y1
)捕获的区域,即在x轴上区域
[x0,x1]
,在y轴上区域
[y0,y1]

更新

例如,考虑这个框架

x0   x1   y0   y1
1    2    2    3 
1.5  2    2    3.5
如何绘制这些区域

另外,如果我想绘制表单的3D区域,该怎么办

x0   x1   y0   y1   z0   z1
1    2    2    3    3    3.5
1.5  2    2    3.5  2.5  3
我尝试使用
geom_point()
来实现这一点,但它似乎不起作用。这两个气泡图都不能完成这项工作

@Philip建议使用
geom_rect()
,它可能适用于2D空间,但3D呢

有什么想法吗

更新2

根据Philip的评论,以下是我的代码:

library(plot3D)
df <- read.csv(...)
box3D(x0=df$V1, x1 = df$V2, y0=df$V3, y1=df$V4, z0=df$V5, z1=df$V6,
      col = rainbow(n = 8, alpha = 0.1), 
      border = "black", lwd = 2, phi = 0, theta=40,
      ticktype="detailed")
库(plot3D)

df如果您提供一些样本数据,这个问题通常会更容易回答,但由于您提到了
geom_point
,我断定您使用的是
ggplot2
(良好的开端!),因此答案可能是:


或者类似的东西。

如果该示例为
df
,则所示示例应该有效。您应该每行获得一个矩形,并且可以通过添加额外的列和对
aes(fill=…)
等的相应调用来对它们进行不同的颜色/填充。对于三维打印,您不能使用
ggplot2
,应该查看包
rgl
plot3D
。也许
plot3D::box3D
就是您要找的。
ggplot(df, aes(xmin = x1, xmax = x2, ymin = y1, ymax = y2)) +
geom_rect()