我想绘制一个使用matplotlib库的Python中的颜色条。情节运作良好,但颜色栏不会在颜色栏上显示结束刻度。颜色条中的末尾刻度 - matplotlib
使用以下命令适当地绘制颜色条,但我只有从-1.6到+1.6的滴答(顶部和底部滴答不存在)。我的数据范围是从-2到+2。
fig.colorbar(surf, shrink=1, aspect=12)
这被认为是如下图:
我尝试使用命令:
cbar.set_ticks([-2,-1,0,1,2]);
但这也未能得到正确的结果。
UPDATE:
我使用滴答=试图[ - 2,0,2]参数,但没有正常工作。这是我的绘制代码片段:
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.gca(projection='3d')
CHI = np.linspace(-45, 45, 35);
M = np.linspace(0, 1, 35)
CHI, M = np.meshgrid(CHI, M)
R = 2*M*np.sin( 2 * np.deg2rad(CHI))
surf = ax.plot_surface(CHI, M, R, rstride=1, cstride=1, cmap=cm.hsv,linewidth=0, antialiased=False)
ax.set_xlim(-45,45)
cbar = plt.colorbar(surf, shrink=1, aspect=12, ticks=[-2,-1,0,1,2])
plt.show()
这将产生以下情节:
正如所见,彩条没有结束蜱,即-2和2
你记得在'set_ticks'之后调用'plt.draw()'吗?大多数功能不会自动触发重新绘制。 – tacaswell
@unutbu - 更新了问题 – shaunakde