我编写了LorenzaAttractor类,并在2D中成功地绘制了y和z对x的图。有可能用3D来绘制这个图吗?
model LorenzAttractor
parameter Real sigma = 10;
parameter Real rho = 28;
parameter Real beta = 8/3;
Real x (start=1);
Real y (start = 1);
Real z (start = 1);
equation
der(x) = sigma*(y-x);
der(y) = x * (rho-z) - y;
der(z) = x
在混合2D和3D子图时,我遇到了删除多余空格的问题。对于纯3D子图,我可以使用fig.subplots_adjust()调整正在绘制的区域以删除空白,请参见。
然而,如果这个3D图像在2D子图中,同样的技巧就不起作用了。我创建了混合的子图,如下所示:
import matplotlib.pyplot as plt
from matplotlib import cm
from mpl_toolkits.mplot3d import axes3d
fig,axes = plt.subplots(2,2)
ax = axes.flat
for a in range(3):
ax[
我知道我可以通过执行以下操作在MATLAB中创建3D曲面图:
x = linspace(1,10,100);
y = linspace(10,20,100);
[X Y] = meshgrid(x,y);
Z = X * Y;
surf(X,Y,Z);
但这要求生成的高度图的所有节点都排成一列。我有一组数据,其中包含任意点(x,y)和高度(z)。有没有一种简单的方法来绘制图形,它将以类似于surf的方式在点之间生成一个表面