如何在Matplotlib图形中添加插入坐标轴以改善数据可视化
在matplotlib中创建图形时,可能会有一些情况需要在主图形内添加较小的图形或坐标轴。这可能是出于多种原因,但最常见的用法是突出显示感兴趣的区域并放大它,或者包含与主图形相关的额外信息。
Matplotlib可以通过在主图形内添加插入坐标轴来实现这一过程。然后可以进一步调整以获得我们想要显示的信息和样式。
在本短教程中,我们将看到如何使用网格坐标创建一个简单的井位图,就像下面这样。然后,我们将添加插入坐标轴来突出显示和放大主要地图的较小区域。
导入库和加载数据
教程的第一步是导入我们将使用的库。
前两个导入语句应该很熟悉:导入 pandas 和 matplotib。第三个从mpl.toolkits.axes_grid1.inset_locator
中引入的导入允许我们在主图形的边界内绘制插入图。
import pandas as pdimport matplotlib.pyplot as pltfrom mpl_toolkits.axes_grid1.inset_locator import inset_axes, mark_inset
导入库后,我们可以导入数据。这里使用的数据来自Force 2020 Xeek机器学习比赛,包含约100口井的测井测量数据。
由于这个文件是由分号(;
)分隔的,我们需要包含一个额外的参数来告诉pd.read_csv()
函数这些值之间的分隔符是什么。
df = pd.read_csv('../data/Xeek Force 2020/train.csv', sep=';')