我有以下代码生成表面图,但它没有按照我的预期进行。
xx, yy = np.meshgrid(dealer_sums, player_sums)
def getter(dealer_sum, player_sum):
state = (dealer_sum, player_sum)
return self.get_value(state)
z = np.vectorize(getter)
zz = z(xx,yy)
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_wireframe(xx,yy, zz)
仅供参考,xx,yy和zz的形状都相等且为2D。
通过查看有关此内容的其他帖子(surface plots in matplotlib; Simplest way to plot 3d surface given 3d points),看起来常见问题是x和y坐标是不规则的,但如果我理解正确,我认为我的是已经通过调用np.meshgrid
正规化了吗?
这就是对plot_wireframe
的看法:
我已经绘制了一些我没想到的线条。我的问题是,是否有可能摆脱这些线并创建一个看起来像这样的表面?
感谢您的帮助。