基础概念
1. Matplotlib中pyplot和面向对象API有什么区别?
- pyplot是命令式接口,适合快速绘图(如
plt.plot()
) - 面向对象API通过
Figure
和Axes
对象精准控制图表元素,适合复杂图表
2. 如何解决Matplotlib中文显示乱码?
plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置中文字体
plt.rcParams['axes.unicode_minus'] = False # 解决负号显示问题
3. 解释Figure和Axes的关系
Figure
是画布容器,Axes
是坐标系实例。一个Figure可包含多个Axes(子图)
4.直方图(hist)和条形图(bar)的区别是什么?
- 直方图:统计连续数据的分布,横轴为数据区间(bin),纵轴为频率。
- 条形图:比较离散类别数据,横轴为类别标签,纵轴为数值。
示例代码(直方图):
python
data = [1, 2, 2, 3, 3, 3, 4, 4, 5]
plt.hist(data, bins=5, edgecolor='black')
示例代码(条形图):
python
categories = ['A', 'B', 'C'<