在 matplotlib 3d 绘图中,plot_wireframe 中参数 rcount、ccount、rstride 和 cstride 的意义是什么?
In matplotlib 3d-plotting what is the significance of the parameters rcount, ccount, rstride and cstride in plot_wireframe?
在 matplotlib 3d 绘图中,函数 plot_wireframe
接受参数 - 分别为 rcount
、ccount
、rstride
和 cstride
。我在 matplotlib documentation 中浏览了他们的文档,但不是很清楚他们做了什么。我试过稍微改变 rcount
和 ccount
的参数值,感觉它与网格 X 和 Y 中用于放置电线的行数和列数有关(X和 Y 是 plot_wireframe
) 的网格输入。我想理解了rcount和ccount之后,就会对rstride和cstride有一个清晰的认识。因此,我可能希望通过示例对此进行更好的解释。
这是我的代码供参考(运行 in Jupyter notebook)-
import numpy as np
import matplotlib.pyplot as plt
# Because I would want to rotate the plots manually
%matplotlib notebook
x = np.linspace(-3,3,7)
y = np.linspace(-3,3,7)
X,Y = np.meshgrid(x,y)
Z = X**2 + Y**2
fig = plt.figure()
ax = fig.add_subplot(projection='3d')
ax.plot_wireframe(X,Y,Z,rcount=3, ccount=5)
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
同一件事的两种表达方式。假设您有 1000x1000 点。如果您指定 rcount=10
和 ccount=50
,它将对数据进行缩减采样,以便绘制 10 行和 50 列。相反,如果你说 rstride=10
和 cstride=50
,那将在行中每隔 10 个点,在列中每隔 50 个点。
因此,对于 1000x1000,rcount=10
与 rstride=100
相同。它们是相互排斥的,显然,您并不需要两者。
在 matplotlib 3d 绘图中,函数 plot_wireframe
接受参数 - 分别为 rcount
、ccount
、rstride
和 cstride
。我在 matplotlib documentation 中浏览了他们的文档,但不是很清楚他们做了什么。我试过稍微改变 rcount
和 ccount
的参数值,感觉它与网格 X 和 Y 中用于放置电线的行数和列数有关(X和 Y 是 plot_wireframe
) 的网格输入。我想理解了rcount和ccount之后,就会对rstride和cstride有一个清晰的认识。因此,我可能希望通过示例对此进行更好的解释。
这是我的代码供参考(运行 in Jupyter notebook)-
import numpy as np
import matplotlib.pyplot as plt
# Because I would want to rotate the plots manually
%matplotlib notebook
x = np.linspace(-3,3,7)
y = np.linspace(-3,3,7)
X,Y = np.meshgrid(x,y)
Z = X**2 + Y**2
fig = plt.figure()
ax = fig.add_subplot(projection='3d')
ax.plot_wireframe(X,Y,Z,rcount=3, ccount=5)
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
同一件事的两种表达方式。假设您有 1000x1000 点。如果您指定 rcount=10
和 ccount=50
,它将对数据进行缩减采样,以便绘制 10 行和 50 列。相反,如果你说 rstride=10
和 cstride=50
,那将在行中每隔 10 个点,在列中每隔 50 个点。
因此,对于 1000x1000,rcount=10
与 rstride=100
相同。它们是相互排斥的,显然,您并不需要两者。