数据可视化|pyecharts折线图
原创
©著作权归作者所有:来自51CTO博客作者大话数据分析的原创作品,请联系作者获取转载授权,否则将追究法律责任

折线图经常用来观察数据随时间变化的趋势,折线图中的维度不宜过多,否则会非常混乱和复杂,折线图可以显示随时间而变化的连续数据,因此非常适用于显示在相等时间间隔下数据的趋势。
在可视化中,也经常用到面积图,面积图是折线图的变种,面积图更注重数据类别之间随着时间趋势的变化关系,表示数值累积。
在折线图中,类别数据沿水平轴均匀分布,所有值数据沿垂直轴均匀分布,本文借助Python中的pyecharts库,绘制常用的折线图、平滑曲线、面积图等, 生成折线图可以分为如下几步,导入pyecharts库,导入数据,基本属性设置,如下为常用的折线图示例,详细操作请看代码注释。
1
折线图基本示例
import pyecharts.options as opts #导入pyecharts库
from pyecharts.charts import Line
num=[114, 55, 27, 101, 125, 27, 105] #导入数据
lab=["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"]
(
Line(init_opts=opts.InitOpts(width='720px', height='320px')) #设置画布大小
.add_xaxis(lab)
.add_yaxis('商家A',num)
.set_global_opts(title_opts=opts.TitleOpts(title="Line-基本示例"))
).render_notebook()

2
GDP总量变化
import pyecharts.options as opts #导入pyecharts库
from pyecharts.charts import Line
gdp = [300.2, 543.3, 1075.9, 2862.5, 5979.6, 10289.7, 14958.3] #导入数据
year = ['1950年', '1960年', '1970年', '1980年', '1990年', '2000年', '2010年']
(
Line(init_opts=opts.InitOpts(width='720px', height='320px')) #设置画布大小
.add_xaxis(year)
.add_yaxis("GDP",gdp)
.set_global_opts(title_opts=opts.TitleOpts(title="GDP总量变化"))
).render_notebook()

3
双变量基本示例
import pyecharts.options as opts #导入pyecharts库
from pyecharts.charts import Line
num = [114, 55, 27, 101, 125, 27, 105] #导入数据
num2 = [57, 134, 137, 129, 145, 60, 49]
lab = ["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"]
(
Line(init_opts=opts.InitOpts(width='720px', height='320px')) # 指定画布大小,括号内为空则默认大小
.add_xaxis(xaxis_data=lab)
.add_yaxis("商家A", num)
.add_yaxis("商家B", num2)
.set_global_opts(title_opts=opts.TitleOpts(title="Line-基本示例"))
).render_notebook()

4
平滑曲线
##平滑曲线
import pyecharts.options as opts #导入pyecharts库
from pyecharts.charts import Line
num = [114, 55, 27, 101, 125, 27, 105] #导入数据
num2 = [57, 134, 137, 129, 145, 60, 49]
lab = ["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"]
(
Line(init_opts=opts.InitOpts(width='720px', height='320px'))
.add_xaxis(lab)
.add_yaxis("商家A", num,is_smooth=True)
.add_yaxis("商家B",num2,is_smooth=True) #设置平滑曲线属性
.set_global_opts(title_opts=opts.TitleOpts(title="平滑曲线"))
).render_notebook()

5
面积图
##面积图
import pyecharts.options as opts #导入pyecharts库
from pyecharts.charts import Line
num = [114, 55, 27, 101, 125, 27, 105] #导入数据
num2 = [57, 134, 137, 129, 145, 60, 49]
lab = ["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"]
(
Line(init_opts=opts.InitOpts(width='720px', height='320px'))#设置画布大小
.add_xaxis(lab)
.add_yaxis("商家A", num,areastyle_opts=opts.AreaStyleOpts(opacity=0.5))#设置面积图属性
.add_yaxis("商家B",num2,areastyle_opts=opts.AreaStyleOpts(opacity=0.5))
.set_global_opts(title_opts=opts.TitleOpts(title="面积图"))
).render_notebook()

