Matplotlib 3d图色条比例尺

时间:2019-10-27 23:37:31

标签: python matplotlib mplot3d

我有一个带有颜色条的3d图,无论我用ax.view_init选择的方向如何,我都希望该颜色条随投影的大小缩放。

如果我能同时使3d图的宽高比相等,那也很好。

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
import matplotlib.colors

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

ax.view_init(elev=90, azim=0)

x = np.arange(3)
X,Y = np.meshgrid(x,x)
Z = np.ones_like(X)

V = np.array([[3,2,2],[1,0,3],[2,1,0]])

norm = matplotlib.colors.Normalize(vmin=0, vmax=3)
ax.plot_surface(X, Y, Z, facecolors=plt.cm.jet(norm(V)), shade=False)

m = cm.ScalarMappable(cmap=plt.cm.jet, norm=norm)
m.set_array([])
plt.colorbar(m)

ax.set_xlabel('x')
ax.set_ylabel('y')

plt.show()

示例代码从this question偷偷地被盗

The problem

0 个答案:

没有答案