pyecharts简单实用,折线图,箱型图,多饼图/玫瑰图,世界图
pyecharts简单使用
- 前言
- 一、折线图
- 二、箱型图
- 三、饼图/玫瑰图
- 四、世界图
- 总结
前言
借一次小项目(小到练手的,嘿嘿),第一次接触到pyecharts,使用感觉嘎嘎舒服,在这里记录一下,一共四张图,折线图,箱型图,饼图/玫瑰图(其实这俩差不多,改个值就行),世界图
一、折线图
先看效果图

这是pyecharts的链式调用,也有之前的单独调用,具体的用法可以看这个大佬的博客Python之pyecharts使用
官方文档也是中文的,非常友好
代码如下:
# 开始绘图line = (# 题目和图宽Line(init_opts=opts.InitOpts(page_title='15日新增确诊累计图', width='100%'))# 图形的全局配置.set_global_opts(tooltip_opts=opts.TooltipOpts(is_show=False),xaxis_opts=opts.AxisOpts(type_="category"),yaxis_opts=opts.AxisOpts(type_="value",axistick_opts=opts.AxisTickOpts(is_show=True),splitline_opts=opts.SplitLineOpts(is_show=True),),)# 添加X,Y坐标信息.add_xaxis(xaxis_data=x).add_yaxis(series_name="15日新增确诊累计图",y_axis=y,symbol="emptyCircle",is_symbol_show=True,label_opts=opts.LabelOpts(is_show=True),is_connect_nones=True)# 绘图保存到本地.render('15日新增确诊累计图.html'))
二、箱型图
效果:

代码:
# 开始绘图X = ['美国', '中国', '日本本土', '德国', '印度', '法国', '英国', '巴西', '意大利', '加拿大']V = [[对应的数据,数据至少大于5个], [X轴有几个值,就对应几个列表]]box = Boxplot(init_opts=opts.InitOpts(width='100%', page_title='GDP前十国家确诊人数箱型图'))box.add_xaxis(X)# box.prepare_data(列表)会自动根据提供的值去计算箱型图需要的值box.add_yaxis('', box.prepare_data(V))box.set_global_opts(title_opts=opts.TitleOpts(title='GDP前十国家确诊人数箱型图', pos_right='center'))box.render('GDP前十国家确诊人数箱型图.html')
这个就是单独调用的
三、饼图/玫瑰图
效果:

代码:
pie = (Pie(init_opts=opts.InitOpts(page_title='全球确诊人数占比', width='100%') # 配置题头)# add添加小饼图,center是图的位置.add(series_name = '', # 相当于饼图的介绍 [list(z) for z in v_list[0]], # 这个是zip()后的数据,比如:[('中国', '112131'),('美国', '511561')]# 图的位置center=['20%', '32%'],# 饼图的半径,数组的第一项是内半径,第二项是外半径radius=[30, 75],# 是否展示成南丁格尔图,通过半径区分数据大小,有'radius'和'area'两种模式。# radius:扇区圆心角展现数据的百分比,半径展现数据的大小# area:所有扇区圆心角相同,仅通过半径展现数据大小rosetype="area", # 不好看).add('',[list(z) for z in v_list[1]],center=['45%', '32%'],radius=[30, 75],rosetype='radius').add('',[list(z) for z in v_list[2]],center=['70%', '32%'],radius=[30, 75],).add('',[list(z) for z in v_list[3]],center=['10%', '80%'],radius=[30, 75],).add('',[list(z) for z in v_list[4]],center=['35%', '80%'],radius=[30, 75],).add('',[list(z) for z in v_list[5]],center=['60%', '80%'],radius=[30, 75],).add('',[list(z) for z in v_list[6]],center=['85%', '80%'],radius=[30, 75],).set_global_opts(# 设置左上角标题和副标题title_opts=opts.TitleOpts(title="全球确诊人数占比", pos_right='center'),# 图例设置legend_opts=opts.LegendOpts(type_='scroll', # 因为图例太多了,scroll设置滚动pos_top='5%')).render('全球确诊人数占比.html'))
四、世界图
效果:

代码:
map = (Map(init_opts=opts.InitOpts(page_title='全球疫苗接种数据图', width='100%') # 题头设置)# add添加图例.add('累计接种/亿剂',jiezhong_data,maptype='world',is_map_symbol_show=False,is_selected=True,name_map=nameMap).add('每百人/亿剂',bairen_data,maptype='world',is_selected=True,is_map_symbol_show=False)# 系列配置.set_series_opts(# 不显示经纬度,设置颜色,字体大小label_opts={'is_show': 'False','color': '#fff', 'font_size': '18', 'position': 'left'},)# 全局配置.set_global_opts(# 视觉映射配置项visualmap_opts=opts.VisualMapOpts(min_=0, max_=int(2500000000)),# 设置左上角标题和副标题title_opts=opts.TitleOpts(title="全球疫苗接种情况地图", pos_left="50", pos_top="5%",title_textstyle_opts=opts.TextStyleOpts(font_size=30),subtitle_textstyle_opts=opts.TextStyleOpts(font_size=18, color='#222')),# 图例设置legend_opts=opts.LegendOpts(selected_mode='single', pos_top="50", pos_bottom="5%", pos_right="right",textstyle_opts=opts.TextStyleOpts(font_size=18)),).render('全球疫苗接种情况地图.html'))
总结
以上就是我在这次的练手项目中的使用,好多的参数都不太清楚,只是能达到使用的效果,待到以后再深入学习可视化的时候,了解一下,这也算是迈出可视化的第一步吧,加油!
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
