中国统计网|Python绘图库讲解:4大常用库你准备学哪个?( 二 )
本文插图
注意:可以看到在上述的绘图代码中 , 你应该有这样一个感受 , 图中既有matplotlib的绘图代码 , 也有seaborn的绘图代码 。 其实就是这样的 , 我们就是按照matplobt的绘图原理进行图形绘制 , 只是有些地方改成seaborn特有的代码即可 , 剩下的调整格式 , 都可以使用matplotlib中的方法进行调整 。
3
plotly绘图原理
首先在介绍这个图的绘图原理之前 , 我们先简单介绍一下plotly这个绘图库:
- plotly是一个基于javascript的绘图库 , plotly绘图种类丰富 , 效果美观
- 易于保存与分享plotly的绘图结果 , 并且可以与Web无缝集成
- ploty默认的绘图结果 , 是一个HTML网页文件 , 通过浏览器可以直接查看
1. 绘图原理说明通过我自己的学习和理解 , 我将plotly绘图原理高度总结为如下几步:
- 绘制图形轨迹 , 在ployly里面叫做trace , 每一个轨迹是一个trace
- 将轨迹包裹成一个列表 , 形成一个“轨迹列表” 。 一个轨迹放在一个列表中 , 多个轨迹也是放在一个列表中
- 创建画布的同时 , 并将上述的轨迹列表 , 传入到Figure中
- 使用Layout添加其他的绘图参数 , 完善图形
- 展示图形
import numpyas npimport pandasas pdimport plotlyas pyimport plotly.graph_objsas goimport plotly.expressionas pxfrom plotlyimport toolsdf = pd.read_excel("plot.xlsx")# 1.绘制图形轨迹 , 在ployly里面叫做`trace` , 每一个轨迹是一个trace 。 trace0 = go.Scatter(x=df["年份"],y=df["城镇居民"],name="城镇居民")trace1 = go.Scatter(x=df["年份"],y=df["农村居民"],name="农村居民")# 2.将轨迹包裹成一个列表 , 形成一个“轨迹列表” 。 一个轨迹放在一个列表中 , 多个轨迹也是放在一个列表中 。 data = http://news.hoteastday.com/a/[trace0,trace1]# 3.创建画布的同时 , 并将上述的`轨迹列表` , 传入到`Figure`中 。 fig = go.Figure(data)# 4.使用`Layout`添加其他的绘图参数 , 完善图形 。 fig.update_layout( title="城乡居民家庭人均收入", xaxis_title="年份", yaxis_title="人均收入(元)")# 5.展示图形 。 fig.show结果如下: 本文插图
4
pyecharts绘图原理
Echarts是一个由百度开源的数据可视化工具 , 凭借着良好的交互性 , 精巧的图表设计 , 得到了众多开发者的认可 。 而python是一门富有表达力的语言 , 很适合用于数据处理 。 当数据分析遇上了数据可视化时 , pyecharts诞生了 。
pyecharts分为v0.5和v1两个大版本 , v0.5和v1两个版本不兼容 , v1是一个全新的版本 , 因此我们的学习尽量都是基于v1版本进行操作 。
和plotly一样 , pyecharts的绘图原理也是完全不同于matplotlib和seaborn , 我们需要额外的去学习它们的绘图原理 。
1. 绘图原理说明
- 选择图表类型
- 声明图形类并添加数据
- 选择全局变量
- 显示及保存图表
# 1.选择图表类型:我们使用的是线图 , 就直接从charts模块中导入Line这个模块;from pyecharts.chartsimport Lineimport pyecharts.optionsas optsimport numpyas npx = np.linspace(0,2 * np.pi,100)y = np.sin(x)( # 2.我们绘制的是Line线图 , 就需要实例化这个图形类 , 直接Line即可; Line # 3.添加数据 , 分别给x,y轴添加数据; .add_xaxis(xaxis_data=http://news.hoteastday.com/a/x) .add_yaxis(series_name="绘制线图",y_axis=y,label_opts=opts.LabelOpts(is_show=False)) .set_global_opts(title_opts=opts.TitleOpts(title="我是标题",subtitle="我是副标题",title_link="https://www.baidu.com/"), tooltip_opts=opts.TooltipOpts)).render_notebook# 4.render_notebook用于显示及保存图表;
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Spacex|卫星互联网轨道资源稀缺,中国航天如何与国际卫星界大亨竞争?
- 融资并购|【搞事】三星:你看我在中国市场还有机会吗丨TCL收购苏州三星
- 跨境电商|烟台:打造多元化“海上旅行电商产业生态圈”
- 数据|智领云荣登“中国大数据企业50强” | 2020大数据产业生态大会盛大召开
- 中年|Python编程语言有什么独特的优势呢?
- 手机中国|余承东:正想办法应对美芯片封杀 今年无鸿蒙手机计划
- 科学|中国将发射超强卫星,功能领先多国,将于明年发射
- 二三说电影|被称为“中国版苹果”,5G新机降价400元,可惜已经被遗忘
- |为什么微信用户这么多,QQ还能成为中国第二大社交软件?
- 技术|最新《中国禁止出口限制出口技术目录》发布,新增操作系统、密码芯片安全技术
