情节上不需要的调色板

Unwanted Color Palette on Plot

我创建的绘图有问题,绘图上出现不需要的额外调色板。

我的脚本使用数据列表来创建带有彩色点的图。

plt.close('all')
fig, axes = plt.subplots(nrows = 1, ncols = 1)
fig.set_facecolor('white')
axes.set_ylabel('$dz$ [$\AA$]')
axes.set_xlabel('Time [ns]')
axes.spines['right'].set_visible(False)
axes.spines['top'].set_visible(False)
axes.yaxis.set_ticks_position('left')
axes.xaxis.set_ticks_position('bottom')
axes.tick_params(direction='out')
#axes.set_title('N/A')
axes.set_ylim(-20,10)
axes.set_xlim(0, 90)
cmap = plt.get_cmap('plasma')
colors = [cmap(i) for i in np.linspace(0, 1, 9)]
# Make Color Bar ------------------------------------------------------
cax = 0
divider = make_axes_locatable(axes)
cax = divider.append_axes('right', size='5%', pad=0.1)
im = axes.imshow(np.linspace(1, 8.5, 100).reshape(10, 10), cmap='plasma')
fig.colorbar(im, cax=cax)
#----------------------------------------------------------------------
for i, dist in enumerate(dz):
    if i % 100 == 0:
        x = i / 1000 
        y = dist
        phval = final_pH_array[i]
        axes.plot(x, y, 'k.', markersize = 4 , color = colors[int(phval)], clip_on = False)
plt.savefig('plot.pdf')
plt.show()

结果如下所示:

如您所见,情节中有一个我不想要但似乎无法摆脱的额外颜色条/调色板。

任何帮助都将非常有用!

我认为im.set_visible(False)应该能达到你想要的效果。

但也许你应该看看 plt.scatterscatter returns 可以传递给 colorbar 函数的 PathCollection