如何使用Julia的Plots包绘制3-D函数?
是否可以使用 Julia Plots 包重现此图?
使用 gnuplot 绘图
x = y = -15:0.4:15
f1 = (x,y) -> @. sin(sqrt(x*x+y*y))/sqrt(x*x+y*y)
surf(x, y, f1, w = :p, marker = "dot", Axes(hidden3d = :on))
回答
不完全相同,但您可以使用以下方法绘制曲面surface:
using Plots
x = y = -15:0.4:15
f(x,y) = sin(sqrt(x^2+y^2))/sqrt(x^2+y^2)
surface(x, y, f)
这会给
或 wireframe
wireframe(x, y, f)
会给
但是如果你真的想要一个 3D 散射,那么你需要手动创建网格并将数据重新排列成我认为的向量,比如
X = [x for x in x for y in y]
Y = [y for x in x for y in y]
scatter3d(X, Y, f.(X,Y))