Matplotlib | 绘制折线图

简介

折线图(Line Chart),是一种以折线来呈现数据随时间变化而变化的图表。

折线图能非常直观地展现数据变化,因此常常被用于分析数据变化趋势。

它在生活中的应用非常广泛,比如温度变化、心电图、成绩表等等。

话不多说,正片开始!(记得点赞收藏!)
pkxsR7n.webp

安装 Matplotlib

打开 CMD, 输入(前提是要安装 Python):

pip install matplotlib

如果下载较慢,建议使用国内镜像:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib

开始绘制

在 Matplotlib 中,绘制折线图的函数如下:

plt.plot([x], y, [fmt], **kwargs)

简单折线图

直接上代码~(结合注释食用!)

其中,修改 name 即可改变横轴标签,修改 value 即可改变数值。

import matplotlib.pyplot as plt # 导入第三方库
name = range(1, 6) # 横轴上的标签
value = [90, 95, 92, 94, 93] # 和横轴一一对应的数值
plt.plot(name, value) # 绘制折线图
plt.show() # 显示图像

pkxYQ0O.png

改变线的样式

  • 改变颜色:color,参数值:r y b g 等等(包括 16 进制色值)
  • 改变线形:linestyle,参数值:“-” “–” “-.” 等等
  • 改变宽带:linewidth
  • 改变透明的:alpha,0 为完全透明,1 为不透明
import matplotlib.pyplot as plt
name = range(1, 6)
value = [90, 95, 92, 94, 93]
plt.plot(name, value, color="r", linestyle="--", linewidth=3, alpha=0.8)
plt.show()

pkxYl7D.png

改变节点的样式

  • 节点形状:marker,比如 “o” 就是圆形
  • 节点大小:markersize
  • 节点内部颜色:markerfacecolor
  • 节点边框颜色:markeredgecolor
  • 节点边框宽度:markeredgewidth
import matplotlib.pyplot as plt
name = range(1, 6)
value = [90, 95, 92, 94, 93]
plt.plot(name, value, marker="o", markersize=5, markerfacecolor="r", markeredgecolor="b", markeredgewidth=2)
plt.show()

pkxY3Ae.png

添加图表文字

  • 图表标题:title()
  • 横轴名称:xlabel()
  • 纵轴名称:ylabel()
import matplotlib.pyplot as plt
name = range(1, 6)
value = [90, 95, 92, 94, 93]
plt.plot(name, value)
plt.xlabel("Name")
plt.ylabel("Value")
plt.title("Score")
plt.show()

pkxY8tH.png

改变坐标轴标签

plt.xticks 中,先写原来的 x 轴标签,然后是更改后的标签

import matplotlib.pyplot as plt
name = range(1, 6)
value = [90, 95, 92, 94, 93]
plt.plot(name, value)
plt.xticks(name, ["Exam"+str(i) for i in range(1, 6)])
plt.show()

pkxYGhd.png

改变坐标数值范围

直接用一个列表来表示范围就行,

像这个例子中,把 y 轴范围改一下,就能让图标好看许多~

import matplotlib.pyplot as plt
name = range(1, 6)
value = [90, 95, 92, 94, 93]
plt.plot(name, value)
plt.ylim([80, 100])
plt.show()

pkxYY9A.png

绘制多条折线

定义多个不同的数值列表,依次绘制即可~

记得 plt.legend() 绘制图例!

import matplotlib.pyplot as plt
name = range(1, 6)
value = [90, 95, 92, 94, 93]
value2 = [91, 93, 94, 93, 94]
plt.plot(name, value, label="Xiao Ming")
plt.plot(name, value2, label="Xiao Hong", color="r")
plt.legend()
plt.show()

pkxYt1I.png

实践:绘制温度变化图

综合运用上面的代码,非常简单~

import matplotlib.pyplot as plt
day = range(10)
tmax = [22, 21, 22, 21, 20, 22, 22, 20, 23, 24]
tmin = [15, 15, 16, 16, 15, 17, 16, 17, 18, 18]
plt.plot(day, tmax, marker="o", color="r", label="Max Temperature")
plt.plot(day, tmin, marker="o", color="b", label="Min Temperature")
plt.legend()
plt.xlabel("Day")
plt.ylabel("Temp")
plt.title("Temperature in 10 days")
plt.xticks(day, ["Day "+str(i) for i in range(1, 11)])
plt.ylim([0, 30])
plt.show()

pkxYNct.png


本文就到这里啦!如果对你有帮助的话,别忘 点赞收藏 !拜~

  • 19
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值