数据分析三剑客通常指的是在Python数据分析领域中,三个非常重要的工具和库:Pandas、NumPy和Matplotlib。Pandas主要负责数据处理和分析,NumPy专注于数值计算和数学运算,而Matplotlib则负责数据可视化。这三个库相互补充,共同构成了Python数据分析的强大工具集。在数据处理、数值计算和数据可视化方面各自扮演着不可或缺的角色。
Matplotlib cheatsheets — Visualization with Python
Matplotlib库由各种可视化类构成,内部结构复杂,受Matlab启发
matplotlib.pyplot是绘制各类可视化图形的命令子库,相当于快捷方式
import matplotlib.pyplot as plt
- import matplotlib.pyplot as plt
-
- plt.plot([33,11,4,5,20])
- plt.ylabel('Grade')
- plt.show()
注意: plot()只有一个输入列表或数组,参数被当作Y轴,x轴用索引自动生成
- import matplotlib.pyplot as plt
- # 指定x和y轴数据
- plt.plot([0, 2, 4, 6, 8], [3, 10, 23, 5, 20])
- plt.ylabel("Grade")
- plt.xlabel("No.")
- # 自定义坐标轴范围
- plt.axis([0, 10, -10, 30])
-
- plt.ylabel('Grade')
- plt.show()
- # 设置字体为黑体
- plt.rcParams['font.sans-serif'] = ['SimHei'] # 适用于Windows系统
- # Linux或macOS,可能需要使用其他字体名称,如:
- plt.rcParams['font.sans-serif'] = ['Heiti SC', 'WenQuanYi Micro Hei', 'STHeiti', 'FangSong']
-
- # 设置正常字体和加粗字体
- plt.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题
plt.subplot(nrows, ncols, plot_number) 参数说明: nrows 行数 ncols 列数 plot_number 图表区域
正弦/余弦曲线
- import matplotlib.pyplot as plt
- import numpy as np
-
-
- def fun_cos(t):
- return np.cos(2 * np.pi * t)
-
-
- def fun_sin(t):
- return np.sin(2 * np.pi * t)
-
-
- a = np.arange(0, 5, 0.02)
- plt.subplot(3, 2, 1)
- plt.plot(a, fun_cos(a))
- plt.subplot(3, 2, 4)
- plt.plot(a, np.sin(2 * np.pi * a), 'r--')
- plt.show()
plt.plot(x, y, format, **kwargs) x: x轴数据,列表或数组,可选 y: y轴数据,列表或数组 format: 控制曲线的格式化字符串,可选 kwargs: 第二组或更多(x,y,format,**kwargs)
注意: 当绘制多条曲线时,各条曲线的x不能省略。