Python中怎么绘制各种折线图
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,Python中怎么绘制各种折线图,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.基本折线图import pyechar
千家信息网最后更新 2026年11月03日Python中怎么绘制各种折线图
Python中怎么绘制各种折线图,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
1.基本折线图
import pyecharts.options as optsfrom pyecharts.charts import Linex=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']y=[100,200,300,400,500,400,300]line=( Line() .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), ), ) .add_xaxis(xaxis_data=x) .add_yaxis( series_name="基本折线图", y_axis=y, symbol="emptyCircle", is_symbol_show=True, label_opts=opts.LabelOpts(is_show=False), ))line.render_notebook()
series_name:图形名称 y_axis:数据 symbol:标记的图形,pyecharts提供的类型包括'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none',也可以通过 'image://url' 设置为图片,其中 URL 为图片的链接。is_symbol_show:是否显示 symbol
2.连接空数据(折线图)
有时候我们要分析的数据存在空缺值,需要进行处理才能画出折线图
import pyecharts.options as optsfrom pyecharts.charts import Linex=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']y=[100,200,300,400,None,400,300]line=( Line() .add_xaxis(xaxis_data=x) .add_yaxis( series_name="连接空数据(折线图)", y_axis=y, is_connect_nones=True ) .set_global_opts(title_opts=opts.TitleOpts(title="Line-连接空数据")))line.render_notebook()

3.多条折线重叠
import pyecharts.options as optsfrom pyecharts.charts import Linex=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']y1=[100,200,300,400,100,400,300]y2=[200,300,200,100,200,300,400]line=( Line() .add_xaxis(xaxis_data=x) .add_yaxis(series_name="y1线",y_axis=y1,symbol="arrow",is_symbol_show=True) .add_yaxis(series_name="y2线",y_axis=y2) .set_global_opts(title_opts=opts.TitleOpts(title="Line-多折线重叠")))line.render_notebook()
4.平滑曲线折线图
import pyecharts.options as optsfrom pyecharts.charts import Linex=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']y1=[100,200,300,400,100,400,300]y2=[200,300,200,100,200,300,400]line=( Line() .add_xaxis(xaxis_data=x) .add_yaxis(series_name="y1线",y_axis=y1, is_smooth=True) .add_yaxis(series_name="y2线",y_axis=y2, is_smooth=True) .set_global_opts(title_opts=opts.TitleOpts(title="Line-多折线重叠")))line.render_notebook()

is_smooth:平滑曲线标志
5.阶梯图
import pyecharts.options as optsfrom pyecharts.charts import Linex=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']y1=[100,200,300,400,100,400,300]line=( Line() .add_xaxis(xaxis_data=x) .add_yaxis(series_name="y1线",y_axis=y1, is_step=True) .set_global_opts(title_opts=opts.TitleOpts(title="Line-阶梯图")))line.render_notebook()
is_step:阶梯图参数
6.变换折线的样式
import pyecharts.options as optsfrom pyecharts.charts import Linefrom pyecharts.faker import Fakerx=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']y1=[100,200,300,400,100,400,300]line = ( Line() .add_xaxis(xaxis_data=x) .add_yaxis( "y1", y1, symbol="triangle", symbol_size=30, linestyle_opts=opts.LineStyleOpts(color="red", width=4, type_="dashed"), itemstyle_opts=opts.ItemStyleOpts( border_width=3, border_color="yellow", color="blue" ), ) .set_global_opts(title_opts=opts.TitleOpts(title="Line-ItemStyle")))line.render_notebook()
linestyle_opts:折线样式配置color设置颜色,width设置宽度type设置类型,有'solid', 'dashed', 'dotted'三种类型 itemstyle_opts:图元样式配置,border_width设置描边宽度,border_color设置描边颜色,color设置纹理填充颜色
7.折线面积图
import pyecharts.options as optsfrom pyecharts.charts import Linex=['星期一','星期二','星期三','星期四','星期五','星期七','星期日']y1=[100,200,300,400,100,400,300]y2=[200,300,200,100,200,300,400]line=( Line() .add_xaxis(xaxis_data=x) .add_yaxis(series_name="y1线",y_axis=y1,areastyle_opts=opts.AreaStyleOpts(opacity=0.5)) .add_yaxis(series_name="y2线",y_axis=y2,areastyle_opts=opts.AreaStyleOpts(opacity=0.5)) .set_global_opts(title_opts=opts.TitleOpts(title="Line-多折线重叠")))line.render_notebook()
8.双横坐标折线图
import pyecharts.options as optsfrom pyecharts.charts import Linefrom pyecharts.commons.utils import JsCodejs_formatter = """function (params) { console.log(params); return '降水量 ' + params.value + (params.seriesData.length ? ':' + params.seriesData[0].data : ''); }"""line=( Line() .add_xaxis( xaxis_data=[ "2016-1", "2016-2", "2016-3", "2016-4", "2016-5", "2016-6", "2016-7", "2016-8", "2016-9", "2016-10", "2016-11", "2016-12", ] ) .extend_axis( xaxis_data=[ "2015-1", "2015-2", "2015-3", "2015-4", "2015-5", "2015-6", "2015-7", "2015-8", "2015-9", "2015-10", "2015-11", "2015-12", ], xaxis=opts.AxisOpts( type_="category", axistick_opts=opts.AxisTickOpts(is_align_with_label=True), axisline_opts=opts.AxisLineOpts( is_on_zero=False, linestyle_opts=opts.LineStyleOpts(color="#6e9ef1") ), axispointer_opts=opts.AxisPointerOpts( is_show=True, label=opts.LabelOpts(formatter=JsCode(js_formatter)) ), ), ) .add_yaxis( series_name="2015 降水量", is_smooth=True, symbol="emptyCircle", is_symbol_show=False, color="#d14a61", y_axis=[2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3], label_opts=opts.LabelOpts(is_show=False), linestyle_opts=opts.LineStyleOpts(width=2), ) .add_yaxis( series_name="2016 降水量", is_smooth=True, symbol="emptyCircle", is_symbol_show=False, color="#6e9ef1", y_axis=[3.9, 5.9, 11.1, 18.7, 48.3, 69.2, 231.6, 46.6, 55.4, 18.4, 10.3, 0.7], label_opts=opts.LabelOpts(is_show=False), linestyle_opts=opts.LineStyleOpts(width=2), ) .set_global_opts( legend_opts=opts.LegendOpts(), tooltip_opts=opts.TooltipOpts(trigger="none", axis_pointer_type="cross"), xaxis_opts=opts.AxisOpts( type_="category", axistick_opts=opts.AxisTickOpts(is_align_with_label=True), axisline_opts=opts.AxisLineOpts( is_on_zero=False, linestyle_opts=opts.LineStyleOpts(color="#d14a61") ), axispointer_opts=opts.AxisPointerOpts( is_show=True, label=opts.LabelOpts(formatter=JsCode(js_formatter)) ), ), yaxis_opts=opts.AxisOpts( type_="value", splitline_opts=opts.SplitLineOpts( is_show=True, linestyle_opts=opts.LineStyleOpts(opacity=1) ), ), ))line.render_notebook()9.用电量随时间变化
import pyecharts.options as optsfrom pyecharts.charts import Linex_data = [ "00:00", "01:15", "02:30", "03:45", "05:00", "06:15", "07:30", "08:45", "10:00", "11:15", "12:30", "13:45", "15:00", "16:15", "17:30", "18:45", "20:00", "21:15", "22:30", "23:45",]y_data = [ 300, 280, 250, 260, 270, 300, 550, 500, 400, 390, 380, 390, 400, 500, 600, 750, 800, 700, 600, 400,]line=( Line() .add_xaxis(xaxis_data=x_data) .add_yaxis( series_name="用电量", y_axis=y_data, is_smooth=True, label_opts=opts.LabelOpts(is_show=False), linestyle_opts=opts.LineStyleOpts(width=2), ) .set_global_opts( title_opts=opts.TitleOpts(title="一天用电量分布", subtitle="纯属虚构"), tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"), xaxis_opts=opts.AxisOpts(boundary_gap=False), yaxis_opts=opts.AxisOpts( axislabel_opts=opts.LabelOpts(formatter="{value} W"), splitline_opts=opts.SplitLineOpts(is_show=True), ), visualmap_opts=opts.VisualMapOpts( is_piecewise=True, dimension=0, pieces=[ {"lte": 6, "color": "green"}, {"gt": 6, "lte": 8, "color": "red"}, {"gt": 8, "lte": 14, "color": "yellow"}, {"gt": 14, "lte": 17, "color": "red"}, {"gt": 17, "color": "green"}, ], pos_right=0, pos_bottom=100 ), ) .set_series_opts( markarea_opts=opts.MarkAreaOpts( data=[ opts.MarkAreaItem(name="早高峰", x=("07:30", "10:00")), opts.MarkAreaItem(name="晚高峰", x=("17:30", "21:15")), ] ) ))line.render_notebook()这里给大家介绍几个关键参数:
①visualmap_opts:视觉映射配置项,可以将折线分段并设置标签(is_piecewise),将不同段设置颜色(pieces);②markarea_opts:标记区域配置项,data参数可以设置标记区域名称和位置。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
星期
线图
折线
数据
颜色
配置
参数
标记
样式
用电量
类型
阶梯
降水
降水量
平滑
区域
名称
图形
图片
宽度
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
南京欣网互联网络科技有限公司
湖南永感互联网科技有限公司
互联网巨头科技公司
易互联网科技有限公司
紫鲸互联网科技
上海万想互联网科技
亿人帮互联网科技
互联网养老 桔豆科技
广西拼得多互联网科技有限公司
深圳国际航运科技和互联网
移动互联网科技股
荆州市昕露互联网络科技有限公司
互联网在线教育科技创业
佛山市拉法互联网科技有限公司
互联网科技大赛获奖感言
互联网时代的科技公司
互联网科技接地气
湖北辰鑫科技互联网
银川新华互联网科技学校招聘
如何强化互联网金融科技
瑰夏咖啡
什么是科技互联网
互联网科技产业
科技创新与互联网经济
互联网下的科技发展
致聘互联网科技
腾讯科技 互联网女皇
互联网科技研发水平
济南有互联网科技公司吗
皮皮虾互联网科技有限公司