R 具有ggplot的三维数据

R 具有ggplot的三维数据,r,ggplot2,3d,contour,R,Ggplot2,3d,Contour,我有以下格式的数据: x <- seq(from = 0.01,to = 1, by = 0.01) y <- seq(from = 0.01,to = 1, by = 0.01) xAxis <- x/(1+x*y) yAxis <- x/(1+x*y) z <- (0.9-xAxis)^2 + (0.5-yAxis)^2 df <- expand.grid(x,y) xAxis <- df$Var1/(1+df$Var1*df$Var2) yA

我有以下格式的数据:

x <- seq(from = 0.01,to = 1, by = 0.01)
y <- seq(from = 0.01,to = 1, by = 0.01)

xAxis <- x/(1+x*y)
yAxis <- x/(1+x*y)

z <- (0.9-xAxis)^2 + (0.5-yAxis)^2

df <- expand.grid(x,y)
xAxis <- df$Var1/(1+df$Var1*df$Var2)
yAxis <- df$Var2/(1+df$Var1*df$Var2)

df$x <- xAxis
df$y <- yAxis
df$z <- z
使用此输出绘制数据时遇到问题。理想情况下,我希望使用ggplot2,因为我希望向原始绘图添加内容


谢谢

我有点不明白你在找什么,但是像这样的东西怎么样

im <- with(df, akima::interp(x, y, z, nx = 1000, ny = 1000))
df2 <- data.frame(expand.grid(x = im$x, y = im$y), z = c(im$z))

ggplot(df2, aes(x, y, fill = z)) + 
  geom_raster() + 
  viridis::scale_fill_viridis()

im我对你要找的东西有点困惑,但是像这样的东西怎么样

im <- with(df, akima::interp(x, y, z, nx = 1000, ny = 1000))
df2 <- data.frame(expand.grid(x = im$x, y = im$y), z = c(im$z))

ggplot(df2, aes(x, y, fill = z)) + 
  geom_raster() + 
  viridis::scale_fill_viridis()

im对于等高线图,我使用“rgl”包。这允许实时操纵绘图,以获得最佳视图

library("rgl")

x <- seq(from = 0.01,to = 1, by = 0.01)
y <- seq(from = 0.01,to = 1, by = 0.01)

#z <- (0.9-xAxis)^2 + (0.5-yAxis)^2

df <- expand.grid(x,y)
xAxis <- df$Var1/(1+df$Var1*df$Var2)
yAxis <- df$Var2/(1+df$Var1*df$Var2)

df$z <- (0.9-xAxis)^2 + (0.5-yAxis)^2

surface3d(x=x, y=y, z=df$z, col="blue", back="lines")
title3d(xlab="x", zlab="z", ylab="y")
axes3d(tick="FALSE")
库(“rgl”)

对于等高线图,我使用“rgl”包。这允许实时操纵绘图,以获得最佳视图

library("rgl")

x <- seq(from = 0.01,to = 1, by = 0.01)
y <- seq(from = 0.01,to = 1, by = 0.01)

#z <- (0.9-xAxis)^2 + (0.5-yAxis)^2

df <- expand.grid(x,y)
xAxis <- df$Var1/(1+df$Var1*df$Var2)
yAxis <- df$Var2/(1+df$Var1*df$Var2)

df$z <- (0.9-xAxis)^2 + (0.5-yAxis)^2

surface3d(x=x, y=y, z=df$z, col="blue", back="lines")
title3d(xlab="x", zlab="z", ylab="y")
axes3d(tick="FALSE")
库(“rgl”)

我将检查您的解决方案,但我想用这些(x,y,z)数据绘制曲面和等高线图。我想需要一些插值来实现一个更形象的图形。我会检查你的解决方案,但我想用这些(x,y,z)数据绘制一个曲面和等高线图。我可以想象需要一些插值来实现一个更形象的图形。我如何才能看到轮廓?我相信lines3d或planes3d可以用来生成轮廓线,甚至地形颜色可以高亮显示轮廓。要将3D绘图导出为html,请使用:browseURL(粘贴(“文件:/”,writeWebGL(宽度=700),sep=“”),可能有用如何查看等高线?我相信lines3d或planes3d可以用来生成等高线,甚至地形颜色也可以高亮显示等高线。要将3D绘图导出为html,请使用:browseURL(粘贴(“文件:/”,writeWebGL(宽度=700),sep=“”),可能有用