Python中为scatter散点图添加颜色渐变条colorbar的方法
本文介绍如何在Python中使用matplotlib为scatter散点图添加颜色渐变条。通过get_cmap获取颜色映射,如RdYlBu,并设置c参数实现颜色随数值变化。同时解决散点被线条覆盖的问题,通过调整透明度优化视觉效果。
在Python中,为散点图(scatter)设置颜色渐变条(colorbar)的方法
参考代码如下:
<span style="font-size:18px;">import matplotlib.pyplot as plt
cm = plt.cm.get_cmap('RdYlBu')
xy = range(20)
z = xy
sc = plt.scatter(xy, xy, c=z, vmin=0, vmax=20, s=35, cmap=cm)
plt.colorbar(sc)
plt.show()</span>
其中get_cmap中取值可为:
可能的取值包括:Accent, Accent_r, Blues, Blues_r, BrBG, BrBG_r, BuGn, BuGn_r, BuPu, BuPu_r, CMRmap, CMRmap_r, Dark2, Dark2_r, GnBu, GnBu_r, Greens, Greens_r, Greys, Greys_r, OrRd, OrRd_r, Oranges, Oranges_r, PRGn, PRGn_r, Paired, Paired_r, Pastel1, Pastel1_r, Pastel2, Pastel2_r, PiYG, PiYG_r, PuBu, PuBuGn, PuBuGn_r, PuBu_r, PuOr, PuOr_r, PuRd, PuRd_r, Purples, Purples_r, RdBu, RdBu_r, RdGy, RdGy_r, RdPu, RdPu_r, RdYlBu, RdYlBu_r, RdYlGn, RdYlGn_r, Reds, Reds_r, Set1, Set1_r, Set2, Set2_r, Set3, Set3_r, Spectral, Spectral_r, Wistia, Wistia_r, YlGn, YlGnBu, YlGnBu_r, YlGn_r, YlOrBr, YlOrBr_r, YlOrRd, YlOrRd_r等
其中末尾加r表示颜色取反。

在自己的程序中,是要绘制出一个网络,使得网络节点的颜色变化来表示度的变化,初步绘制的结果如下:

但是到现在,很不足的一点是,在matplotlib中plt.plot,plt.scatter这两个不能设置显示的上下层关系,不管两句话的顺序如何,都是plot在上,scatter在下,想让scatter在上层。导致绘制图中的圆点总是被直线覆盖,目前处理的方式是,将直线透明度设置为alpha = 0.2,可以稍微好看一点。
以上这篇python实现给scatter设置颜色渐变条colorbar的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









