【问题标题】:Problem with plotting 3D elliptic paraboloid绘制 3D 椭圆抛物面的问题
【发布时间】:2021-05-30 11:31:33
【问题描述】:

我希望使用 R 绘制 3D 函数。例如,采用 f(x,y) = (????−2????−1)^2 + (3????+????−2)^2 给出的椭圆抛物面。这是我尝试过的:

require(lattice)
x <- seq(-10, 10, by=0.5)
y <- seq(-10, 10, by=0.5)
g <- expand.grid(x = x, y = y)
g$z <- (x-2*y-1)^2 + (3*x-y-2)^2
wireframe(z ~ x * y, g, drape = TRUE,
          aspect = c(1,1), colorkey = TRUE)`

这是输出

但是,这是 f 的“真实”图:

我尝试更改xy 的定义,但无济于事。我还尝试了 emdbook 包中的 curve3d() 函数。看起来更糟。

【问题讨论】:

    标签: r plot lattice


    【解决方案1】:

    你乘错了xy。你需要使用g里面的那些:

    g$z <- with(g, (x-2*y-1)^2 + (3*x-y-2)^2)
    wireframe(z ~ x * y, g, drape = TRUE,
              aspect = c(1,1), colorkey = TRUE)
    

    【讨论】:

    • 看来还是有问题...不过感谢您的澄清。
    • 你能解释一下怎么回事吗?或者emdbook::curve3d 输出有什么问题?
    • 添加 `scales=list(arrows=FALSE)` 会给你打勾等
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-04
    相关资源
    最近更新 更多