matplotlib
3.1 安装配置
Matplotlib 是一个用于创建高质量图表的 Python 绘图库。在开始使用 Matplotlib 之前,需要先安装它。以下是安装 Matplotlib 的步骤:
步骤 1:确保已经安装了 Python 和 pip。pip 是 Python 的包管理工具,用于安装和管理 Python 包。
步骤 2:打开命令提示符或终端,输入以下命令来安装 Matplotlib:
pip install matplotlib
这将自动下载并安装 Matplotlib 及其依赖的包。
步骤 3:安装完成后,可以通过在 Python 解释器中导入 Matplotlib 来验证安装是否成功:
import matplotlib
如果没有出现错误消息,那么 Matplotlib 已经成功安装。
步骤 4:为了更好地使用 Matplotlib,建议安装一个图形用户界面(GUI)工具,如 Jupyter Notebook 或 PyCharm。这些工具可以帮助更方便地创建和展示图表。
步骤 5:在 Jupyter Notebook 中使用 Matplotlib 时,可以通过以下命令启用 inline 模式,以便在笔记本中直接显示图表:
%matplotlib inline
这就是安装配置 Matplotlib 的基本步骤。安装完成后,可以开始使用 Matplotlib 创建各种图表。
3.2 Matplotlib 快速入门
安装 Matplotlib 后,我们可以通过一些基本的示例来快速了解如何使用这个库。以下是一些简单的步骤来开始使用 Matplotlib 绘制图表。
步骤 1:导入 Matplotlib 的 pyplot
模块。pyplot
是 Matplotlib 的一个模块,提供了一个类似于 MATLAB 的绘图框架。
import matplotlib.pyplot as plt
步骤 2:准备数据。我们通常需要提供 x 和 y 轴的数据。
x = [0, 1, 2, 3, 4]
y = [0, 1, 4, 9, 16]
步骤 3:使用 plt.plot()
函数绘制图表。
plt.plot(x, y)
步骤 4:添加标题和标签,以便更好地描述图表。
plt.title('Sample Plot')
plt.xlabel('X-axis label')
plt.ylabel('Y-axis label')
步骤 5:调用 plt.show()
来显示图表。
plt.show()
将上述步骤组合在一起,我们得到一个简单的 Python 脚本,用于绘制一个基本的折线图。
import matplotlib.pyplot as plt
# 数据
x = [0, 1, 2, 3, 4]
y = [0, 1, 4, 9, 16]
# 绘图
plt.plot(x, y)
# 添加标题和标签
plt.title('Sample Plot')
plt.xlabel('X-axis label')
plt.ylabel('Y-axis label')
# 显示图表
plt.show()
运行这段代码,将会弹出一个窗口,显示我们绘制的折线图。
这是 Matplotlib 的快速入门示例。通过这个示例,我们可以看到如何导入 pyplot
模块,准备数据,绘制图表,添加标题和标签,以及显示图表。接下来,我们可以学习如何绘制不同类型的图表和自定义图表的样式。
3.3 图形绘制
Matplotlib 支持多种图形的绘制,包括线图、散点图、条形图、饼图等。以下是一些基本图形绘制的示例。
线图
线图是最基本的图表类型之一,用于显示数据随时间或其他连续变量的变化趋势。
import matplotlib.pyplot as plt
# 数据
x = [0, 1, 2, 3, 4]
y = [0, 1, 4, 9, 16]
# 绘制线图
plt.plot(x, y)
# 添加标题和标签
plt.title('Line Chart')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
# 显示图表
plt.show()
散点图
散点图用于显示两个变量之间的关系,每个点代表一个数据点。
import matplotlib.pyplot as plt
# 数据
x = [5, 7, 8, 7, 2, 17, 2, 9, 4, 11, 12, 9, 6]
y = [99, 86, 87, 88, 100, 86, 103, 87, 94, 78, 77, 85, 86]
# 绘制散点图
plt.scatter(x, y)
# 添加标题和标签
plt.title('Scatter Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
# 显示图表
plt.show()
条形图
条形图用于比较不同类别的数据。
import matplotlib.pyplot as plt
# 数据
categories = ['A', 'B', 'C', 'D']
values = [10, 8, 6, 4]
# 绘制条形图
plt.bar(categories, values)
# 添加标题和标签
plt.title('Bar Chart')
plt.xlabel('Categories')
plt.ylabel('Values')
# 显示图表
plt.show()
饼图
饼图用于显示各部分占整体的比例。
import matplotlib.pyplot as plt
# 数据
labels = 'Apples', 'Oranges', 'Pears', 'Bananas'
sizes = [15, 30, 45, 10]
colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue']
# 绘制饼图
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=140)
# 显示图表
plt.axis('equal') # 确保饼图是圆形的
plt.show()
这些是使用 Matplotlib 绘制基本图形的示例。通过调整绘图函数的参数,可以自定义图表的外观,包括颜色、线型、标记等。此外,Matplotlib 还支持更复杂的图表类型和自定义选项,可以通过官方文档进一步探索。
3.4 风格样式
Matplotlib 提供了多种内置的风格样式,可以让你的图表变得更加美观和个性化。通过使用样式,可以快速改变图表的整体外观,包括颜色、线型、背景等。
使用内置样式
Matplotlib 内置了许多样式,你可以通过 plt.style.use()
函数来选择使用。首先,让我们查看所有可用的样式:
import matplotlib.pyplot as plt
print(plt.style.available)
这将打印出所有可用的样式列表。选择一个样式并应用于你的图表:
plt.style.use('ggplot') # 例如,使用 'ggplot' 样式
现在,使用这个样式绘制一个图表:
plt.plot([1, 2, 3, 4])
plt.show()
创建自定义样式
除了使用内置样式,你还可以创建自定义样式。可以通过创建一个名为 mpl_style.py
的 Python 文件来定义自己的样式,然后在这个文件中设置你想要的参数。例如:
# mpl_style.py
plt.style.use([
'dark_background', # 使用暗色背景
{
'axes.edgecolor': 'white', # 轴边缘颜色为白色
'axes.facecolor': '#333333', # 轴背景颜色为深灰色
'axes.labelcolor': 'white', # 轴标签颜色为白色
'xtick.color': 'white', # x轴刻度颜色为白色
'ytick.color': 'white', # y轴刻度颜色为白色
'grid.color': 'gray', # 网格颜色为灰色
'text.color': 'white', # 文本颜色为白色
'figure.facecolor': '#222222', # 图表背景颜色为深灰色
'savefig.facecolor': '#222222', # 保存图表的背景颜色为深灰色
}
])
然后在你的脚本中导入这个样式:
import matplotlib.pyplot as plt
import mpl_style
plt.style.use(mpl_style) # 使用自定义样式
plt.plot([1, 2, 3, 4])
plt.show()
临时使用样式
如果你只想在特定的代码块中使用一个样式,可以使用 with
语句来临时应用样式:
import matplotlib.pyplot as plt
with plt.style.context('seaborn-darkgrid'):
plt.plot([1, 2, 3, 4])
plt.show()
在这个代码块中绘制的图表将使用 ‘seaborn-darkgrid’ 样式,而代码块之外的图表则不会受到影响。
通过这些方法,你可以轻松地改变 Matplotlib 图表的外观,使其更加符合你的需求或品牌风格。