如何为含点密度的Matplotlib散点图添加颜色条?
给密度着色的散点图添加颜色条
要实现添加指示点密度z的颜色条,只需两步操作:
- 保存
scatter()方法的返回值(这是一个PathCollection对象,包含散点的颜色映射信息) - 调用
colorbar()并传入该对象,将颜色条与散点的颜色规则关联
修改后的完整代码如下:
import numpy as np import matplotlib.pyplot as plt from scipy.stats import gaussian_kde # 假设df是你的目标DataFrame x = df['sza'] y = df['dif'] # 计算点密度 xy = np.vstack([x,y]) z = gaussian_kde(xy)(xy) fig, ax = plt.subplots() # 保存散点图的返回对象 scatter = ax.scatter(x, y, c=z, s=100) # 添加颜色条并设置标题 plt.colorbar(scatter, label='点密度') plt.show()
如果需要调整颜色条的尺寸、位置等细节,可以使用fig.colorbar(scatter, ax=ax, shrink=0.8, pad=0.05)这类写法,通过shrink参数调整长度,pad参数控制与坐标轴的间距。
内容的提问来源于stack exchange,提问作者span_path
相关产品推荐
相关产品推荐

