在matplotlib 3d绘图中,函数plot_wireframe
的参数分别为rcount
、ccount
、rstride
和cstride
。我在matplotlib文档中为他们查看了文档,但不太清楚他们做了什么。我试着稍微改变rcount
和ccount
的参数值,感觉这与网格X和Y中有多少行和列用于放置导线有关(X和Y是输入到plot_wireframe
的网格(。我想在理解了rcount和account之后,会对rstride和cstride有一个清晰的理解。因此,我请求用一个例子来更好地解释这一点。
这是我的参考代码(在Jupyter笔记本中运行(-
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
相同。它们是相互排斥的,很明显,你并不真的需要两者。