我想设置任何形式的颜色条都没有刻度。我已经在两个地方搜索并设置了刻度参数。然而,右边框仍然有一些勾号。
cb = mpl.colorbar.ColorbarBase(ax2, cmap=cmap, norm=norm, spacing='proportional', boundaries=bounds, format='%.1f')
ax2.set_xlabel('t', size=12)
cb.ax.tick_params(size=0) # these two lines are my searching effort
cb.set_ticks([])
plt.show()
这是一个独立的代码,仍然有微小的刻度线。
fig, ax = plt.subplots(1, 1, figsize=(0.05, 6))
tmax=5
tmin=-5
color_num=6
bounds = np.linspace(tmin, tmax, color_num+1)
norm = mpl.colors.BoundaryNorm(bounds, color_num)
cmap = plt.cm.tab20
cmaplist = [cmap(i) for i in range(color_num)]
cmap = mpl.colors.LinearSegmentedColormap.from_list('custom map', cmaplist, color_num)
cb = mpl.colorbar.ColorbarBase(ax, cmap=cmap, norm=norm, spacing='proportional')
cb.ax.tick_params(size=0) # these two lines are my searching effort
cb.set_ticks([])
plt.show()
看起来这些小刻度是在未指定标签时由
cb.set_ticks([])
生成的。
Axes.tick_params
的刻度线。事实上,我们可以最小化刻度线和标签大小,并将它们设置为与图形背景相同的颜色,以便它们不再可见。
cb.ax.tick_params(size=0, # tick size
labelsize=0, # label size
colors=ax.get_facecolor() # tick and labels color
)
导致