Skip to content

Matplotlib

Matplotlib 是 Python 的一个绘图库,它提供了一套完整的绘图功能, 可以绘制出各种类型的图表,如折线图、柱状图、饼图、散点图、直方图等。很容易与NumPy\Pandas等库一起使用。

环境搭建

  1. 安装matplotlib
shell
pip install matplotlib   # anaconda自带
  1. 测试matplotlib版本
python
import matplotlib.pyplog as plt
print(plt.__version__)

使用

绘制基础

函数说明
plt.plot()绘制折线图
plt.bar()绘制柱状图
柱状图主要用来纵向和横向对比
plt.bar(x,y,width=0.5,color='r')
每个坐标点多个柱状图 plt.bar(x,y) plt.bar([i+width for i in x],y) plt.bar([i+2*width for i in x],y)
plt.pie()绘制饼图
explode=(0,0.1) 分裂程度
autopct='%1.1f%%' 饼图百分比
plt.hist()绘制直方图
bins=10 直方图柱子个数
alpha=0.5 透明度
kwargs={bins=100,alpha=0.5} plt.hist(x,**kwargs)
plt.meshgrid()计算网格点
X,Y = np.meshgrid(x,y) 计算x,y的相交点
plt.contour()绘制等高线图
plt.contourf()绘制等高面图,颜色填充
plt.barh()绘制柱状图,与bar() 相反,横向比较
plt.subplot()绘制多图
将画布分成几行几列,然后绘制第几个图 plt.subplot(1,2,1)
plt.axhline()绘制水平线
plt.axvline()绘制垂直线
plt.title()设置标题
plt.xlabel()设置x轴标签
plt.ylabel()设置y轴标签
plt.xticks()设置x轴刻度
plt.yticks()设置y轴刻度
plt.show()显示图
plt.legend()显示图例
plt.text()显示每条数据的x,y坐标
plt.figure()设置画布大小
plt.scatter()散点图
alpha:透明度
python
import matplotlib.pyplog as plt

plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签

plt.plot([1,1],[6,6])
plt.title('直线')
plt.show()

plt.plot([1,2,3,4],[1,4,9,16])
plt.title('折线图')
plt.show() 

plt.savefig('result.jpg')  # 保存图片

# 创建3d
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
x=[1,1,2,2]
y=[3,4,4,4]
z=[1,100,1,1]
fig=plt.figure()
ax=Axes3D(fig)   # 创建一个axes3d的子图放到frguer画布
ax.plot_trisurf(x,y,z)plt.
plt.show()

plot格式

离散
参数说明
-实线
--虚线
-.点划线
点线
.
,像素
o圆点
v倒三角形
^直角三角形
1下箭头
2上箭头
3左箭头
4右箭头
s正方形
p五角星
*星号
h六边形
H六边形
+加号
xX标记
D菱形
d窄菱形
_水平线
颜色
颜色颜色代码
b蓝色
g绿色
r红色
c青色
m品红
y黄色
k黑色
w白色
python
import matplotlib.pyplog as plt
import numpy as np

x = np.linspace(0, 10, 10)  # 生成0-10的10个数
plt.plot(x,x+1, '--c', label='y=x+1')  # --c 虚线青色  label图例
plt.title('直线') 
plt.show()

上次更新于: