简介
Matplotlib 是一个在 Python 中广泛使用的数据可视化库。它允许用户创建各种各样的可视化图表,包括折线图、散点图、柱状图等等。在本实验中,你将学习如何在 Matplotlib 中使用 symlog 轴缩放来创建对称对数图。
虚拟机使用提示
虚拟机启动完成后,点击左上角切换到 笔记本 标签页,以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,随时向 Labby 提问。课程结束后提供反馈,我们会及时为你解决问题。
导入库
在开始之前,我们需要导入必要的库。在本实验中,我们将使用 Matplotlib 和 NumPy。
import matplotlib.pyplot as plt
import numpy as np
生成数据
接下来,我们需要生成一些要绘制的数据。在这个例子中,我们将创建三个数组:一个用于 x 轴值,一个用于第一个图中的 y 轴值,另一个用于第三个图中的 y 轴值。
dt = 0.01
x = np.arange(-50.0, 50.0, dt)
y1 = np.arange(0, 100.0, dt)
y3 = np.sin(x / 3.0)
创建图表
既然我们已经有了数据,就可以创建图表了。我们将创建三个子图,每个子图都有不同的 symlog 轴缩放。
fig, (ax0, ax1, ax2) = plt.subplots(nrows=3)
在 x 轴上创建对称对数图
在第一个子图中,我们将在 x 轴上创建一个对称对数图。我们还将为 x 轴添加一个次要网格。
ax0.plot(x, y1)
ax0.set_xscale('symlog')
ax0.set_ylabel('symlogx')
ax0.grid()
ax0.xaxis.grid(which='minor')
在 y 轴上创建对称对数图
在第二个子图中,我们将在 y 轴上创建一个对称对数图。
ax1.plot(y1, x)
ax1.set_yscale('symlog')
ax1.set_ylabel('symlogy')
在 x 轴和 y 轴上都创建对称对数图
在第三个子图中,我们将在 x 轴和 y 轴上都创建一个对称对数图。我们还将把 linthresh 参数设置为 0.015。
ax2.plot(x, y3)
ax2.set_xscale('symlog')
ax2.set_yscale('symlog', linthresh=0.015)
ax2.grid()
ax2.set_ylabel('symlog both')
显示图表
最后,我们可以使用 show() 方法来显示我们的图表。
plt.show()
总结
在本实验中,你学习了如何在 Matplotlib 中使用对称对数(symlog)坐标轴缩放来创建对称对数图。具体来说,你学习了如何在 x 轴、y 轴以及 x 轴和 y 轴上都创建对称对数图。