当前位置:
首页 > temp > python入门教程 >
-
python中关于数据分析pyecharts柱状图知识详解(小白必看)

一、pyecharts简介
pyecharts主要基于Web浏览器进行显示,绘制的图形比较多,包括折线图、柱状图、饼图、漏斗图 地图和极坐标图等。使用pyecharts绘图代码量很少,但绘制的图形比较美观。
pyecharts 分为 v0.5.X 和 v1 两个大版本,v0.5.X 和 v1 间不兼容,v1 是一个全新的版本 v0.5.X支持 Python2.7,3.4+。
经开发团队决定,0.5.x 版本将不再进行维护,0.5.x 版本代码位于 05x 分支 ,v1仅支持 Python3.6+,新版本系列将从 v1.0.0 开始。
本文所讲主要基于 pyecharts 1.7.1 版本进行展示 安装命令为:
pip install pyecharts==1.7.1
二、pyecharts柱状图/条形图全解
1.基本柱状图/条形图
'''
如有需要Python学习资料的小伙伴可以加群领取:1136201545
'''
from pyecharts import options as opts
from pyecharts.charts import Bar
l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']
l2=[100,200,300,400,500,400,300]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("基本柱状图", l2)
.set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副标题"))
)
bar.render_notebook()

参数介绍:
add_xaxis:添加横坐标,需传入列表 add_yaxis:添加纵坐标,需传入列表,切列表元素为数值
2.添加坐标轴名称
from pyecharts import options as opts
from pyecharts.charts import Bar
l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']
l2=[100,200,300,400,500,400,300]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("基本柱状图", l2)
.set_global_opts(
title_opts=opts.TitleOpts(title="Bar-基本示例"),
yaxis_opts=opts.AxisOpts(name="人流量"),
xaxis_opts=opts.AxisOpts(name="星期"),)
)
bar.render_notebook()

3.多个纵坐标的柱状图/条形图
from pyecharts import options as opts
from pyecharts.charts import Bar
l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']
l2=[100,200,300,400,500,400,300]
l3=[300,400,500,400,300,200,100]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("l2", l2)
.add_yaxis("l3", l3)
.set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副标题"),
toolbox_opts=opts.BrushOpts(),)
)
bar.render_notebook()

opts.BrushOpts()为圈选工具,如图形右上角所示
4.设置柱状图间隔和颜色
from pyecharts import options as opts
from pyecharts.charts import Bar
l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']
l2=[100,200,300,400,500,400,300]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("l2",l2,category_gap=0, color='#FFFF00')
.set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副标题"))
)
bar.render_notebook()

category_gap:设置间隔
color:设置柱状图颜色
5.横向柱状图
from pyecharts import options as opts
from pyecharts.charts import Bar
l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']
l2=[100,200,300,400,500,400,300]
l3=[300,400,500,400,300,200,100]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("l2", l2)
.add_yaxis("l3", l3)
.reversal_axis()
.set_series_opts(label_opts=opts.LabelOpts(position="right"))
.set_global_opts(title_opts=opts.TitleOpts(title="横向柱状图"))
)
bar.render_notebook()

reversal_axis将图形反转
position="right"表示将数值在图形右侧显示,同理left、center分别表示左侧和中间
6.显示最大值、最小值和平均值
a.标记线
from pyecharts import options as opts
from pyecharts.charts import Bar
import random
l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']
l2=[100,200,300,400,500,400,300]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("l2", l2)
.set_global_opts(title_opts=opts.TitleOpts(title="标记线柱状图"))
.set_series_opts(
label_opts=opts.LabelOpts(is_show=False),
markline_opts=opts.MarkLineOpts(
data=[
opts.MarkLineItem(type_="min", name="最小值"),
opts.MarkLineItem(type_="max", name="最大值"),
opts.MarkLineItem(type_="average", name="平均值"),
]
),
)
)
bar.render_notebook()

b.标记点
from pyecharts import options as opts
from pyecharts.charts import Bar
import random
l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']
l2=[100,200,300,400,500,400,300]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("l2", l2)
.set_global_opts(title_opts=opts.TitleOpts(title="标记线柱状图"))
.set_series_opts(
label_opts=opts.LabelOpts(is_show=False),
markpoint_opts=opts.MarkPointOpts(
data=[
opts.MarkPointItem(type_="min", name="最小值"),
opts.MarkPointItem(type_="max", name="最大值"),
opts.MarkPointItem(type_="average", name="平均值"),
]
),
)
)
bar.render_notebook()

7.旋转x轴坐标
from pyecharts import options as opts
from pyecharts.charts import Bar
import random
l1=['很长很长很长很长很长的坐标轴{}'.format(i) for i in range(10)]
l2=[random.choice(range(10,100,10)) for i in range(10)]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("l2", l2)
.set_global_opts(xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),
title_opts=opts.TitleOpts(title="Bar-旋转X轴标签", subtitle="解决标签名字过长的问题"))
)
bar.render_notebook()

rotate=-15表示将坐标轴逆时针旋转15度
8.横坐标缩放
a.整体缩放(type_="inside")
from pyecharts import options as opts
from pyecharts.charts import Bar
import random
l1=['{}日'.format(i) for i in range(1,31)]
l2=[random.choice(range(100,3100,100)) for i in range(1,31)]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("l2", l2)
.set_global_opts(title_opts=opts.TitleOpts(title="区域缩放柱状图"),
datazoom_opts=opts.DataZoomOpts(type_="inside"))
)
bar.render_notebook()

b.左右滑动缩放
from pyecharts import options as opts
from pyecharts.charts import Bar
import random
l1=['{}日'.format(i) for i in range(1,31)]
l2=[random.choice(range(100,3100,100)) for i in range(1,31)]
bar = (
Bar()
.add_xaxis(l1)
.add_yaxis("l2", l2)
.set_global_opts(title_opts=opts.TitleOpts(title="区域缩放柱状图"),
datazoom_opts=opts.DataZoomOpts(type_="slider"))
)
bar.render_notebook()

本次主要介绍了pyecharts柱状图的常见形式,后续会出来pyecharts柱状图的高阶用法,敬请关注!
出处:https://www.cnblogs.com/python147/p/14549107.html
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数