整理自官网

from pyecharts.globals import CurrentConfig, OnlineHostType
CurrentConfig.ONLINE_HOST = OnlineHostType.NOTEBOOK_HOST

饼图

from pyecharts.charts import Pie
from pyecharts import options as opts
x = ['18岁以下','18-35', '35-60','60岁以上']
y = [20, 25, 45,10]
data_pair = [list(i) for i in zip(x,y)]
pie = Pie(init_opts=opts.InitOpts(height='350px', width='850px', bg_color='#CCCCCC'))
pie.add('年龄段占比',data_pair=data_pair,# 半径大小radius='40%',# 位置center=['25%','35%']
)
pie.add('年龄段占比',data_pair=data_pair, radius=['40%','25%'], center=['70%', '35%'])
pie.add('年龄段占比',data_pair=data_pair, radius='40%', center=['25%', '75%'], rosetype="radius")
pie.add('年龄段占比',data_pair=data_pair, radius='40%', center=['70%', '75%'], rosetype="area")
pie.set_global_opts(title_opts={'text':'基本图表'},tooltip_opts=opts.TooltipOpts(trigger='item', formatter='{a}<br/>{b}:{c}({d}%)'),legend_opts=opts.LegendOpts(pos_top='40px', pos_right='30px',orient='vertical')
)
pie.set_colors(['#99CCFF','#66CCFF','#0099CC','#006699'])
pie.set_series_opts(label_opts=opts.LabelOpts(color='black'))
pie.render_notebook()
# tooltip的文字格式:{a}系列名称 {b}类别名称 {c}类别值 {d}类别百分比

data_pair1 = [list(i) for i in zip(['男','女'], [100, 130])]  # 内层的
data_pair2 = [list(i) for i in zip(x+['女>%s'%i for i in x], y+[20, 45, 45, 20])]  # 外层的
​
pie = Pie(init_opts=opts.InitOpts(height='350px', width='850px'))
pie.add('性别和年龄', data_pair=data_pair1, center=['50%','50%'], radius='30%', label_opts=opts.LabelOpts(position='inner',color='black'))
pie.add('性别和年龄', data_pair=data_pair2, center=['50%','50%'], radius=['40%', '65%'],label_opts=opts.LabelOpts(color='black'))
pie.set_global_opts(title_opts={'text':'基本图表'},tooltip_opts=opts.TooltipOpts(trigger='item', formatter='{a}<br/>{b}:{c}({d}%)'),legend_opts=opts.LegendOpts(pos_top='40px', pos_right='30px',orient='vertical'),
)
# 从内到外
pie.set_colors(['#33CCCC','#FF9933','#99CCFF','#66CCFF','#0099CC','#006699','#FFCC99','#FFCC66','#FFCC33','#FFCC00'])
pie.render_notebook()

极坐标

import numpy as np
from pyecharts.charts import Polar
from pyecharts import options as opts
p1 = Polar(init_opts=opts.InitOpts(height='300px', width='350px'))
p1.add('', [(i, i*np.random.rand()) for i in range(50)],type_='scatter', # line bar effect_scatter# 标记类型symbol='circle',  # rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'symbol_size=4, stack=None,)
p1.set_global_opts(title_opts=opts.TitleOpts(title='基本设定', pos_left='10%', pos_top='5%'))
p1.render_notebook()

p2 = Polar(init_opts=opts.InitOpts(height='300px', width='350px'))
p2.add_schema(# 角度轴配置:起始位0angleaxis_opts=opts.AngleAxisOpts(start_angle=0,boundary_gap=False)
)
p2.add('', [(i, np.random.randint(1, 100)) for i in range(30)],type_='effectScatter', effect_opts=opts.EffectOpts(color='#FF9933', scale=5, period=4))  # 波纹缩放比例,动画周期的秒数
p2.set_global_opts(title_opts=opts.TitleOpts(title='角度轴', pos_left='10%', pos_top='5%'))
p2.render_notebook()

p3 = Polar(init_opts=opts.InitOpts(height='300px', width='350px'))
p3.add_schema(angleaxis_opts=opts.AngleAxisOpts(is_clockwise=True, max_=50),  # 顺时针增大# 径向轴配置radiusaxis_opts=opts.RadiusAxisOpts(data=['18岁以下','18-35', '35-60','60岁以上'], type_='category')
)
p3.add('', [20, 25, 45,10],type_='bar')
p3.set_global_opts(title_opts=opts.TitleOpts(title='径向轴', pos_left='10%', pos_top='5%'))
p3.render_notebook()

p4 = Polar(init_opts=opts.InitOpts(height='300px', width='350px'))
p4.add_schema(angleaxis_opts=opts.AngleAxisOpts(data=['周一','周二','周三','周四','周五','周六'], type_='category')
)
p4.add('A', [20, 25, 35,10,20,10],type_='bar', stack='stack')
p4.add('B', [20, 25, 35,10,20,10],type_='bar', stack='stack')
p4.set_global_opts(title_opts=opts.TitleOpts(title='堆积柱形', pos_left='5%', pos_top='5%'))
p4.render_notebook()

雷达图-基本设置

from pyecharts.charts import Radar
r = Radar(init_opts=opts.InitOpts(height='300px', width='350px',bg_color='#99CCFF'))
r.add_schema(center=['50%','50%'],# 添加类别轴schema=[opts.RadarIndicatorItem(name='18岁以下', max_=50),opts.RadarIndicatorItem(name='18岁-35', max_=50),opts.RadarIndicatorItem(name='35-60', max_=50),opts.RadarIndicatorItem(name='60以上', max_=50),],# 分割区域:显示,区域设置splitarea_opt=opts.SplitAreaOpts(is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1)),# 分割线splitline_opt=opts.SplitLineOpts(is_show=True, linestyle_opts=opts.LineStyleOpts(color='#0099CC',width=0.9)),# 类别轴的文字标签textstyle_opts=opts.TextStyleOpts(color='#006699')
)
# 添加系列,设置系列线
r.add('男', data=[[20, 25, 45,10]], color="black")
r.add('女', data=[[30, 35, 25,10]], color="#CD0000")
r.set_global_opts(title_opts={'text':'雷达图'},legend_opts=opts.LegendOpts(pos_right=40))
r.render_notebook()

雷达图-多个数据项-圆形

类别轴使用字典添加,每个系列多条数据

schema = [{'name':'18岁以下', 'max':50},{'name':'18岁-35', 'max':50},{'name':'35-60', 'max':50},{'name':'60以上', 'max':50},]
male = [[20, 25, 45,10], [10, 35, 28,14]]
female = [[30, 35, 25,10], [16, 45, 18,16]]
r = Radar(init_opts=opts.InitOpts(height='300px', width='350px'))
r.add_schema(schema=schema,shape='circle'
)
# 添加系列,设置系列线
r.add('男', data=male, color="black")
r.add('女', data=female, color="#5CACEE")
r.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
r.set_global_opts(title_opts={'text':'雷达图'},legend_opts=opts.LegendOpts(pos_right=40))
r.render_notebook()

雷达图-角度轴设置

设置成圆形,使用极坐标下的形式,系列使用字典添加

schema = [{'name':'18岁以下', 'max':50},{'name':'18岁-35', 'max':50},{'name':'35-60', 'max':50},{'name':'60以上', 'max':50},]
female = [{'value':[30, 35, 25,10] ,'name':'女'}]
r = Radar(init_opts=opts.InitOpts(height='340px', width='450px'))
r.add_schema(schema=schema, shape='circle', radius='80%',angleaxis_opts=opts.AngleAxisOpts(# 数据尺度的设置min_=0,max_=360, interval=10,is_clockwise=False,# 关闭上面设置的数据尺度:刻度线,标签,轴线(外面的圆),分割网格线axistick_opts=opts.AxisTickOpts(is_show=False),axislabel_opts=opts.LabelOpts(is_show=False),axisline_opts=opts.AxisLineOpts(is_show=False),splitline_opts=opts.SplitLineOpts(is_show=False),),radiusaxis_opts=opts.RadiusAxisOpts(# 径向轴添加min_=0, max_=50, interval=10,splitarea_opts=opts.SplitAreaOpts(is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1)),axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(width=1.5))),# 设置角度和径向轴时,必加参数polar_opts=opts.PolarOpts(),
)
# 添加系列,设置系列线
r.add('女', data=female, color="#5CACEE", areastyle_opts=opts.AreaStyleOpts(opacity=0.3))
r.set_colors("#4587E7")
r.set_global_opts(title_opts={'text':'雷达图'},legend_opts=opts.LegendOpts(pos_right=40))
r.render_notebook()

水球图

from pyecharts.charts import Liquid
from pyecharts.globals import SymbolType
from pyecharts import options as opts
l = Liquid(init_opts=opts.InitOpts(height='300px', width='350px'))
l.add('lq',data=[0.5,0.2],  #每个波浪的位置shape='pin', #'rect','roundRect','triangle','diamond','pin','arrow' 可选,也可以导入模块,使用SymbolType.ARROW,也可以为自定义的 SVG 路径color=['#5CACEE'], # 波浪颜色,序列is_animation=True,  # 显示波浪动画is_outline_show=False, # 显示边框# 球在画布上的位置center=['25%','50%'],label_opts=opts.LabelOpts(font_size=30,color='black', position='inside')  # 30%显示的颜色和位置
)
l.add('lq2',[0.3456],center=['70%','50%'])
l.set_global_opts(title_opts=opts.TitleOpts(title="Liquid-基本示例"))
l.render_notebook()
# 也可以使用grid设置:grid = Grid().add(l1, grid_opts=opts.GridOpts()).add(l2, grid_opts=opts.GridOpts())

仪表盘

from pyecharts.charts import Gauge
gauge = Gauge(init_opts=opts.InitOpts(height='300px', width='350px'))
gauge.add('指标1', data_pair=[('完成率',78.67)])
gauge.set_global_opts(title_opts=opts.TitleOpts(title='仪表盘1'))
gauge.render(r'C:\Users\hp\Desktop\machine_learning\其它图形\仪表盘.html')
gauge.render_notebook()

gauge = Gauge(init_opts=opts.InitOpts(height='300px', width='350px'))
gauge.add('指标2', data_pair=[('利润率',20.13)],split_number=4, # 分割段数radius='90%',  # 半径大小title_label_opts=opts.LabelOpts(font_size=20,color='black'),axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(color=[(0.25, "#67e0e3"), (0.5, "#37a2da"), (0.75, "#fd666d"),(1, "#5CACEE")],width=20)))
gauge.set_global_opts(title_opts=opts.TitleOpts(title='仪表盘2-其它设置'))
gauge.render_notebook()

词云图

from pyecharts.charts import WordCloud
words = [("花鸟市场", 14),("汽车", 28), ("视频", 96), ("电视", 25), ("Lover Boy 88", 54),("动漫", 46),("音乐", 53),("直播", 13),("广播电台", 6), ("戏曲曲艺", 17),("演出票务", 6),("给陌听", 1), ("汽车保险", 28),("陪驾代驾", 4),("网络购物", 125),("做我的猫", 18)]
w = WordCloud(init_opts=opts.InitOpts(height='350px', width='350px',bg_color='#67e0e3'))
w.add('', data_pair=words, word_size_range=[12,30],
#      shape='cardioid',# 形状'circle', 'cardioid', 'diamond', 'triangle-forward', 'triangle', 'pentagon', 'star' 可选mask_image=r'F:\形状\形状.png',  # 自定义形状textstyle_opts=opts.TextStyleOpts(font_family="方正兰亭特黑简体"),  # 字体,复制属性中显示的名字pos_top='0',pos_left='0',pos_bottom='0',pos_right='0' # 放大无效?)
w.set_global_opts(title_opts=opts.TitleOpts(title='词云图'), tooltip_opts=opts.TooltipOpts())
w.render_notebook()

漏斗图

from pyecharts.charts import Funnel
f = Funnel(init_opts=opts.InitOpts(height='350px', width='650px'))
f.add('2015',data_pair=[list(z) for z in zip(['STEP1','STEP2','STEP3','STEP4'],[15,10,7,3])],sort_='descending',  # 不按值的顺序也可以自动排序label_opts=opts.LabelOpts(position='inside'),gap=3,  # 图形之间的间隔,默认0
)
f.set_global_opts(title_opts=opts.TitleOpts(title='漏斗图'))
f.set_colors(['#99CCFF','#66CCFF','#0099CC','#006699'])
f.render_notebook()

箱型图

from pyecharts.charts import Boxplot
data = [np.random.randint(-3,10, (2,20)).tolist(),np.random.randint(3,20, (2,20)).tolist()
]
data

[[[9, 5, 9, 2, 1, 9, 1, 2, 9, 5, 7, -3, 0, 1, 4, 0, -3, 9, 2, 5],
[-2, 7, -1, 1, 5, -1, 4, 7, 9, 6, -2, -3, 4, 2, 6, 3, -1, 5, 9, 6]],
[[12, 8, 8, 7, 11, 7, 15, 12, 19, 9, 8, 12, 9, 8, 13, 19, 16, 7, 13, 6],
[10, 3, 5, 16, 7, 15, 6, 13, 15, 16, 12, 17, 19, 15, 17, 4, 17, 3, 15, 12]]]

b = Boxplot(init_opts=opts.InitOpts(height='350px', width='650px'))
b.add_xaxis(['A','B'])
b.add_yaxis('2015', y_axis=b.prepare_data(data[0]))  # 直接写data[0]则是已经计算好的4个数
b.add_yaxis('2016', y_axis=b.prepare_data(data[1]))
b.set_global_opts(title_opts=opts.TitleOpts(title="BoxPlot"),# y轴分割区域填充yaxis_opts=opts.AxisOpts(splitarea_opts=opts.SplitAreaOpts(is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=0.8)))
)
b.render_notebook()

热力图

from pyecharts.charts import HeatMap
values=[[i,j,np.random.randint(0,100)] for i in range(7) for j in range(10)]
# 设置几个空值
for i in np.random.randint(0,70,17):values[i][2]='_'
values[:5]

[[0, 0, ‘_’], [0, 1, 10], [0, 2, 44], [0, 3, 67], [0, 4, 65]]

h = HeatMap(init_opts=opts.InitOpts(height='350px', width='650px'))
h.add_xaxis(['周一','周二','周三','周四','周五','周六','周日'])
h.add_yaxis('', yaxis_data=['第%s周'%i for i in range(1,11)], value=values,label_opts=opts.LabelOpts(is_show=True,position='inside'))
h.set_global_opts(title_opts={'text':'热力图'},# 使用分割区域填充的方式填充空值区域颜色xaxis_opts=opts.AxisOpts(splitarea_opts=opts.SplitAreaOpts(areastyle_opts=opts.AreaStyleOpts(opacity=1))),yaxis_opts=opts.AxisOpts(splitarea_opts=opts.SplitAreaOpts(areastyle_opts=opts.AreaStyleOpts(opacity=1))),visualmap_opts=opts.VisualMapOpts(pos_right='10px',pos_bottom='50px')
)
h.render_notebook()

日历图

from pyecharts.charts import Calendar
import pandas as pd
data = [[d.strftime('%Y-%m-%d'), np.random.randint(10,20)] for d in pd.date_range('2020-03-01', '2020-05-31', freq='d')]
data[:5]

[[‘2020-03-01’, 12],
[‘2020-03-02’, 11],
[‘2020-03-03’, 12],
[‘2020-03-04’, 12],
[‘2020-03-05’, 17]]

c = Calendar(init_opts=opts.InitOpts(height='350px', width='650px'))
c.add('', data, calendar_opts=opts.CalendarOpts(range_=['2020-03-01','2020-05-31'],  # 某年:'2020';某月:'2020-03';范围:示例pos_left='100px',# 年份轴标签:设置与轴的距离等yearlabel_opts=opts.LabelOpts(margin=20,font_size=50,font_weight='bold',position='left'),#设置成中文:星期轴和月份轴标签daylabel_opts=opts.CalendarDayLabelOpts(name_map="cn",margin=10),monthlabel_opts=opts.CalendarMonthLabelOpts(name_map="cn"))
)
c.set_global_opts(title_opts=opts.TitleOpts(title="Calendar-颜色分层"),visualmap_opts=opts.VisualMapOpts(max_=20,min_=10,orient="horizontal",is_piecewise=True,pos_bottom='100px',pos_left='100px'
)
)
c.render_notebook()

pyecharts-饼图/极坐标/雷达/水球图/仪表盘/词云图/漏斗图/箱型图/热力图/日历图相关推荐

  1. Pyecharts:pyecharts(图文+代码)实战(柱状图/条形图/散点图、漏斗图、仪表盘、折线/面积图、水球图、地图、平行坐标系、饼图、极坐标系、雷达图、词云图)之绘制各种吊炸天的图表

    Pyecharts:pyecharts(图文+代码)实战(柱状图/条形图/散点图.漏斗图.仪表盘.折线/面积图.水球图.地图.平行坐标系.饼图.极坐标系.雷达图.词云图)之绘制各种吊炸天的图表 目录 ...

  2. 用Python pyecharts v1.x 绘制图形(二):折线图、折线面积图、散点图、雷达图、箱线图、词云图

    文章目录 关于pyecharts 折线图 折线面积图 散点图 雷达图 箱线图 词云图 其他 关于pyecharts pyecharts是一个用于生成echart(百度开源的数据可视化javascrip ...

  3. 5.pyecharts模块总结之饼图、散点图、桑基图、词云图、多图

    pyecharts模块总结之饼图.散点图.桑基图.词云图.多图 一.饼图 (1)普通饼图 from pyecharts.charts import Pie from pyecharts import ...

  4. python爬取豆瓣《狂暴巨兽》评分影评,matplotlib和wordcloud制作评分图和词云图

    开发环境:win7,8,10,python3+ python模块:requestes,bs4,matplotlib,jieba,wordcloud,PIL,numpy,random 实现的功能和思路: ...

  5. 根据词频、背景图绘制词云图

    根据词频.背景图绘制词云图 记录一下绘制词云图的过程 首先说明一下,绘制词云图完整的过程应如下: 获取一段文本,也就是要根据这个文本来绘制词云图 制作停用词词典,简单来说,停用词就是分词的规则,例如, ...

  6. python 之pyecharts画图:最全地图,词云图,世界地图,省份图,区县图

    python最全画地图,可视化数据,pyecharts画图: https://www.jianshu.com/p/e0b2851672cd Python强大的pyecharts绘画优美图形<二& ...

  7. 数据可视化大屏(柱状图、条形图、情感分析饼图、地域图、词云图、数据表格图、涟漪散点图)

    基于pyecharts.charts绘制图形 最终效果展示: 准备工作 import pandas as pd from pyecharts.charts import Map, Pie, Bar, ...

  8. Python 之 Matplotlib 散点图、箱线图和词云图

    文章目录 一.散点图 1. scatter() 函数 2. 设置图标大小 3. 自定义点的颜色和透明度 4. 可以选择不同的颜色条,配合 cmap 参数 5. cmap 的分类 5.1 Sequent ...

  9. Pyecharts基本图:日历图

    Pyecharts基本图:日历图 文章目录 Pyecharts基本图:日历图 前言 一. Calendar:日历图 1.1 `class pyecharts.charts.Calendar`配置项类 ...

  10. python 制作高斯mask_【趣味案例】用Python制作各种酷炫词云图,原来这么简单!...

    一.简介词云图是文本挖掘中用来表征词频的数据可视化图像,通过它可以很直观地展现文本数据中地高频词:! 图1 词云图示例 在Python中有很多可视化框架可以用来制作词云图,如pyecharts,但这些 ...

最新文章

  1. Docker入门之 - 如何安装Docker CE
  2. 80客团队博客建设的思路
  3. 聊聊Elasticsearch的TimedRunnable
  4. 工作197:判断对象里面是否有0和1
  5. 在线js拼接html代码,关于js拼接html元素?
  6. linux 远程赋值,linux 简单远程复制命令scp参数
  7. [转]SSAS没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG)) (Microsoft Visual Studio)的解决办法...
  8. Linux命令行(console)屏幕分辨率调整
  9. luogu P1015 回文数
  10. Spring消息之STOMP
  11. Microsoft .NET Micro Framework Training conducted by Sean Liming (上海)
  12. shopex php5.3,shopex.4.85支持php5.3 | 学步园
  13. Postgis使用工具osm2pgsql导入OpenStreetMap数据
  14. 使用GPIO输出控制Led亮灭(CC2530)
  15. JavaScript 常见鼠标事件
  16. 解决Bean with name ‘XX‘ has been injected into other beans 问题
  17. dw选项卡怎么设置,dw表单中怎么设置方框里面打对勾
  18. 数据分析-np、pd常用函数
  19. 99%的异地恋都会失败,你们凭什么成为那1%?
  20. 计算机网络密码凭据,网络访问: 不允许存储网络身份验证的密码和凭据

热门文章

  1. 达观数据推出智能审单机器人,全面提升航运物流效率
  2. 私人助手android,私人助手Pro专业版
  3. WordPress仿站工具构建网页时踩坑
  4. 【技术】DTEmpower核心功能技术揭秘(3) - HDDV高维数据可视化技术
  5. 省钱兄同城外卖源码O2O同城服务源码校园外卖源码uniapp前端模版
  6. Oracle varchar和varchar2的区别
  7. 蒙特卡罗(Monte Carlo) 模拟
  8. 【预测模型】加权移动平均法预测煤炭产值
  9. js获取移动端屏幕高度和宽度等设备尺寸
  10. Power BI数据源之web