栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

matplotlib plt.bar设置 热力颜色 颜色渐变条 颜色随数值大小变化 多维图 三维

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

matplotlib plt.bar设置 热力颜色 颜色渐变条 颜色随数值大小变化 多维图 三维

我有三列数据:昵称、金主数量、平均人气
我希望昵称为x轴,金主数量为y轴,平均人气则反映在条形的颜色上,人气值越高,颜色越浅,反之,人气值越低。

def draw_bar(key_name, key_values, colorBar_data, colorBar_label='平均人气'): 
    '''
    绘制带渐变颜色的柱状图,附带渐变条
    parameters:
        key_names:柱状图的横轴名称(维度一)
        key_values:柱状图的纵轴数值(维度二)
        colorBar_data:想要通过colorBar_data映射到颜色的深浅来反映条形图的另一个维度(维度三)
        colorBar_label:第三个维度的名称
    return:
        返回一张图
    '''
    norm = plt.Normalize(colorBar_data.min(), colorBar_data.max())
    norm_values = norm(colorBar_data)
    map_vir = cm.get_cmap(name='plasma')    # name设置渐变颜色色带
    color = map_vir(norm_values)

    plt.figure(figsize=(10,4))  # 设置图片大小
    
    #设置图片的右边框和上边框为不显示
    ax=plt.gca()  # gca:get current axis得到当前轴
    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')
    
    plt.bar(key_name, key_values, color=color)
    plt.xticks(rotation=90)
    plt.xlim(-1)
    # 添加渐变条
    sm = cm.ScalarMappable(cmap=map_vir,norm=norm)  # norm设置最大最小值
    plt.colorbar(sm, label=colorBar_label)
bar_data = pht.set_index('昵称')[['金主数量','平均人气']].sort_values('金主数量', ascending=False).head(30)
draw_bar(bar_data.index, bar_data.金主数量.values, colorBar_data=bar_data.平均人气.values)
plt.ylabel('金主数量')

bar_data.head()


参考文章:
https://blog.csdn.net/xiaoyw71/article/details/108845807 Python Matplotlib绘制渐变色柱状图(bar)并加边框和配置渐变颜色条(colorbar)
https://www.brothereye.cn/python/427/ plt绘图颜色渐变以及colormap

https://blog.csdn.net/Caiqiudan/article/details/112797274 python matplotlib searbon 设置画版颜色 热力图固定颜色等级 固定比例尺寸大小

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/341609.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号