爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 8528|回复: 0

[源代码] Python解决实际问题:从matplotlib提取色条给JavaScript用

[复制链接]

新浪微博达人勋

发表于 2021-11-16 17:40:14 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
'''
需求缘起:
本人目前常用matplotlib画图,为了使画的图与前端网页的数据配色一致,现在我要
将matplotlib的色条转为2种通用的表示形式:
十六进制#ff03f8,和 rgb(74, 242, 207)

'''
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
import json

def getHexColorbar():
    # 辅助函数:
    def f(rr):
        rr=np.round(rr*255)
        rr=rr.astype(np.int16)
        rr=hex(rr)
        rr=str(rr)
        rr=rr[2:]
        if len(rr)==1:
            rr='0'+rr
        return rr
    # 辅助函数:
    def g(rr):
        rr=np.round(rr*255)
        rr=rr.astype(np.int16)
        return rr

    x=np.arange(256)
    colors=mpl.cm.rainbow(x)

    hexcolor=[]
    rgb=[]
    for i in colors:
        hexcolor.append('#'+f(i[0])+f(i[1])+f(i[2]))
        rgb.append( (g(i[0]),g(i[1]),g(i[2])) )
   
    # 提供2种颜色表示方式:
    # 十六进制#ff03f8,和(74, 242, 207)
    result={"hex":hexcolor,"rgb":rgb}

    return result

if __name__=="__main__":
    x=getHexColorbar()
    print(x)







密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表