Pyecharts(v0.5):Radar(雷达图)

684 阅读2分钟

前言

pyecharts v0.5.x版本

雷达图主要用于表现多变量的数据。

雷达图可以观察一个主体在多个维度特征上的表现,也可以观察多个主体在各个维度特征上的比较

示例代码


from pyecharts import Radar

# Radar类的实例化对象,和pyecharts中其他类的实例化的参数是一样的
radar = Radar("主标题", 
              "副标题", 
              title_color=xxx, 
              title_pos=xxx, # 有"center",“left”,“right”等选项 
              width=1300, 
              height=620, 
              background_color='xxx')
              
              
# 雷达图除了add()函数之外,还多了set_radar_component()函数或者config()函数,现在config()函数已经被废弃
# set_radar_commponent()函数和config()函数的作用是相同的,
# config()函数已经被废弃了,set_radar_commponent()是config()函数的替代者。
# 注意:从 v0.5.9 开始,原有的 `config` 被废弃,推荐使用 `set_radar_component` 方法。

Radar.set_radar_component() 和 Radar.config() 方法签名

set_radar_component(schema=None,
                    c_schema=None,
                    shape="",
                    rader_text_color="#000",
                    **kwargs)

# Radar.set_radar_component()函数参数解释:
schema -> list,默认雷达图的指示器,
               用来指定雷达图中的多个维度,会对数据处理成 {name:xx, value:xx} 的字典。
               该参数一般设定雷达图的各个角对应啥特征

c_schema -> dict,用户自定义雷达图的指示器,用来指定雷达图中的多个维度
    一般的格式是{"中介中心性":[0,1],'度中心性':[0,1],'平均最短沟通路径':[1,10],.....}
    # 该参数和上面的schema参数,有其一就可以了
    - name: 指示器名称
    - min: 指示器最小值
    - max: 指示器最大值

shape -> str,雷达图绘制类型,有'polygon'(多边形)和'circle'可选
rader_text_color -> str,雷达图数据项字体颜色,默认为'#000'
radar_text_size -> int,雷达图数据项字体大小,默认为 12
                    
config(schema=None,
        c_schema=None,
        shape="",
        rader_text_color="#000", 
        **kwargs)

Radar.add() 方法

add(name, 
    value,
    item_color=None, 
    **kwargs)
    
# 参数解释
name -> list,图例名称
value -> [list], 包含列表的列表,数据项。
         数据中,每一行是一个『数据项』,每一列属于一个『维度』
item_color -> str,指定单图例颜色,及任何一个主体都可以单独指定颜色
is_area_show -> bool,是否显示填充区域
area_opacity -> float,填充区域透明度
area_color -> str,填充区域颜色
is_splitline_show -> bool,是否显示分割线,默认为 True
is_axisline_show -> bool,是否显示坐标轴线,默认为 True
legend_selectedmode --> str,有'both','single'等选项,其作用是:是否单独显示其中一个图例。


from pyecharts import Radar

schema = [ ("销售", 6500), 
           ("管理", 16000), 
           ("信息技术", 30000),
           ("客服", 38000), 
           ("研发", 52000), 
           ("市场", 25000) ]  
v1 = [ [4300, 10000, 28000, 35000, 50000, 19000] ] 
v2 = [ [5000, 14000, 28000, 31000, 42000, 21000] ] 

radar = Radar() 

radar.config(schema) 

radar.add("预算分配", v1, is_splitline=True, is_axisline_show=True) 
radar.add("实际开销", v2, label_color=["#4e79a7"], is_area_show=False, legend_selectedmode='single')

image.png