当前位置:   article > 正文

用pyecharts来绘制雷达图展示_pyecharts 库来创建雷达图,使用雷达图展示任意一间酒店在卫生、服务、设施和位置

pyecharts 库来创建雷达图,使用雷达图展示任意一间酒店在卫生、服务、设施和位置

雷达图的各种用法

 pyecharts的radar类表示为雷达图,该类中提供了class radar()配置项和def add_schema()的各种配置项,以下为这两项的函数用法:

  1. class Radar(
  2. # 初始化配置项,参考 `global_options.InitOpts`
  3. init_opts: opts.InitOpts = opts.InitOpts()
  4. )
  1. def add_schema(schema: Sequence[Union[opts.RadarIndicatorItem, dict]], shape: Optional[str] = None,center: Optional[types.Sequence] = None, radius: types.Optional[types.Union[types.Sequence, str]] = None, start_angle: types.Numeric = 90,
  2. textstyle_opts: Union[opts.TextStyleOpts, dict] = opts.TextStyleOpts(),
  3. splitline_opt: Union[opts.SplitLineOpts, dict] = opts.SplitLineOpts(is_show=True),
  4. splitarea_opt: Union[opts.SplitAreaOpts, dict] = opts.SplitAreaOpts(),axisline_opt: Union[opts.AxisLineOpts, dict] = opts.AxisLineOpts(),
  5. radiusaxis_opts: types.RadiusAxis = None, angleaxis_opts: types.AngleAxis = None, polar_opts: types.Polar = None

  该函数的常用含义如下:

  1.  雷达指示器配置项列表,参考 `RadarIndicatorItem`:
  • schema: Sequence[Union[opts.RadarIndicatorItem, dict]] 
  1. 雷达图绘制类型,可选 'polygon' 和 'circle':
  •  shape: Optional[str] = None
  1. 雷达的中心(圆心)坐标,数组的第一项是横坐标,第二项是纵坐标。
  2. 支持设置成百分比,设置成百分比时第一项是相对于容器宽度,第二项是相对于容器高度。
  • center: Optional[types.Sequence] = None
  1.  雷达的半径。可以为如下类型:
  •  number:直接指定外半径值
  • string:例如,'20%',表示外半径为可视区尺寸(容器高宽中较小一项)的 20% 长度。
  •  Array.<number|string>:数组的第一项是内半径,第二项是外半径。每一项遵从上述 number string 的描述。
  • radius: types.Optional[types.Union[types.Sequence, str]] = None
  1.  坐标系起始角度,也就是第一个指示器轴的角度。
  • start_angle: types.Numeric = 90
  1.   文字样式配置项,参考 `series_options.TextStyleOpts`
  • textstyle_opts: Union[opts.TextStyleOpts, dict] = opts.TextStyleOpts(),
  1. 分割线配置项,参考 `series_options.SplitLineOpts`
  • splitline_opt: Union[opts.SplitLineOpts, dict] = opts.SplitLineOpts(is_show=True)
  1.  分隔区域配置项,参考 `series_options.SplitAreaOpts`
  • splitarea_opt: Union[opts.SplitAreaOpts, dict] = opts.SplitAreaOpts()
  1.  坐标轴轴线配置项,参考 `global_options.AxisLineOpts`
  • axisline_opt: Union[opts.AxisLineOpts, dict] = opts.AxisLineOpts()
  1.  极坐标系的径向轴。参考 `basic_charts.RadiusAxisOpts`
  • radiusaxis_opts: types.RadiusAxis = None
  1. 极坐标系的角度轴。参考 `basic_charts.AngleAxisOpts`
  • angleaxis_opts: types.AngleAxis = None
  1.  极坐标系配置,参考 `global_options.PolorOpts`
  • polar_opts: types.Polar = None)
def add()函数的用法:
  1. def add(series_name: str,data: types.Sequence[types.Union[opts.RadarItem, dict]],
  2. is_selected: bool = True,symbol: Optional[str] = None,color: Optional[str] = None,
  3. label_opts: opts.LabelOpts = opts.LabelOpts(),linestyle_opts: opts.LineStyleOpts = opts.LineStyleOpts(),areastyle_opts: opts.AreaStyleOpts = opts.AreaStyleOpts(),
  4. tooltip_opts: Union[opts.TooltipOpts, dict, None] = None)

该函数的含义如下:

  •  series_name:系列名称,用于 tooltip 的显示,legend 的图例筛选。
  • data:系列数据项 。
  • is_selected:是否选中图例。
  •  color: 系列 label 颜色。
  •  label_opts: 标签配置项。
  •   linestyle_opts: 线样式配置项
  •  areastyle_opts: 区域填充样式配置项
  •  tooltip_opts: 提示框组件配置项

例题:

  1. v1 = [[33, 45, 3, 9,6, 4]]
  2. x_schema = [
  3. {"name": "化学药", "color": 'black', "font_size": 18},
  4. {"name": "中成药", "color": 'black', "font_size": 18},
  5. {"name": "生物制品", "color": 'black', "font_size": 18},
  6. {"name": "中药饮片", "color": 'black', "font_size": 18},
  7. {"name": "保健品", "color": 'black', "font_size": 18}
  8. ]
  9. radar_x = Radar()
  10. radar_x.add_schema(x_schema,shape="circle")
  11. radar_x.add('药品', v1, color='red').set_colors(['red'])
  12. radar_x.set_global_opts(
  13. title_opts=op.TitleOpts(title="全国药店药品销售额占比", pos_right="center"),
  14. legend_opts=op.LegendOpts(legend_icon="roundRect", align="left", pos_left='7%',
  15. pos_bottom='14%', orient='vertical')
  16. )

运行结果:

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号