📅  最后修改于: 2023-12-03 15:18:56.526000             🧑  作者: Mango
Matplotlib是一个Python绘图库,可以用于创建各种静态、动态、交互式的图表、图形和动画等。这篇文章将介绍Matplotlib的更多高级特性和绘图技巧。
折线图是Matplotlib最基础、也是最常用的一种图表。通过线段将数据点连接起来,可以很直观地观察数据的变化趋势。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-10, 10, 1000)
y = np.sin(x)
plt.plot(x, y)
plt.show()
折线图还可以用于显示同时具有变化趋势和变化周期性的数据,如股票价格、天气变化等。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10*np.pi, 1000)
y = np.sin(x) + np.random.normal(0, 0.1, 1000)
plt.plot(x, y)
plt.show()
散点图用于展示两个变量之间的关系,可以很明显地发现数据之间的相关性和趋势性。
import matplotlib.pyplot as plt
import numpy as np
x = np.random.normal(0, 1, 100)
y = np.random.normal(0, 1, 100)
plt.scatter(x, y)
plt.show()
条形图主要用于展示不同类别之间的数据,可以比较各类别的大小和相对差异。
import matplotlib.pyplot as plt
labels = ['A', 'B', 'C', 'D', 'E']
data = [10, 25, 13, 20, 8]
plt.bar(labels, data)
plt.show()
饼图用于展示不同类别的占比关系,形状类似于一个圆饼。
import matplotlib.pyplot as plt
labels = ['A', 'B', 'C', 'D', 'E']
data = [10, 25, 13, 20, 8]
plt.pie(data, labels=labels)
plt.show()
箱线图主要用于展示不同数据组之间的差异和分布情况。箱线图通过盒子和线条展示数据的中位数、上下四分位数、异常值等信息。
import matplotlib.pyplot as plt
import numpy as np
x = np.random.normal(0, 1, 100)
y = np.random.normal(0, 1, 100)
z = np.random.normal(0, 1, 100)
data = [x, y, z]
plt.boxplot(data)
plt.show()
热力图用于展示数据矩阵中各个元素之间的大小关系和分布情况。颜色深浅可以表示不同程度的大小。
import matplotlib.pyplot as plt
import numpy as np
data = np.random.randn(10, 10)
plt.imshow(data, cmap='hot')
plt.colorbar()
plt.show()
Matplotlib还可以绘制3D图表,如3D散点图、3D曲面图等。
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
x = np.random.normal(0, 1, 100)
y = np.random.normal(0, 1, 100)
z = np.random.normal(0, 1, 100)
ax.scatter(x, y, z)
plt.show()
本文介绍了Matplotlib的更多高级特性和绘图技巧,包括折线图、散点图、条形图、饼图、箱线图、热力图和3D图等。这些图表都可以帮助程序员更好地展示数据和分析数据,提高数据可视化的效果和质量。