尝试绘制表面时for循环出错

时间:2020-04-02 01:21:37

标签: r r-plotly

我正在尝试在R中绘制3d曲面,但是当X和Y的值均为正时,似乎在for循环中出现了问题。

这是一个非常简单的函数,用于for循环,但是我没有看到一个错误,但最终表面仍然与假定的表面不同(在这种情况下为正常平面)。我可能会想念什么吗?

.txt

Text

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

您的循环应使用seq_along(x)seq_along(y)而不是xy

library(ggplot2)
library(plotly)    

x = seq(-5,5)
y = seq(-5,5)
fxy = matrix(0,length(y),length(x))
dim(fxy)

result = function(x,y){
    x+y
}

for (j in seq_along(y)) {
    for (i in seq_along(x)) {
        fxy[i,j] = result(x[i],y[j])
    }
}

fig = plot_ly(z = ~fxy, x = x, y=y)
fig = fig %>% add_surface()

fig