使用 matplotlib 添加多个 Pull Plots
Adding multiple Pull Plots with matplot lib
我在一个有拉图的地块中工作,我将其定义为:
fig, (ax1, ax2) = aplt.ratio_plot(name= canvasArray[kl], figsize=(800, 800), hspace=0.05)
它工作正常,但现在我需要在图像中添加另一个拉图,所以我尝试了:
fig, (ax1, ax2,ax3) = aplt.subplots(3,1,name="fig1", figsize=(850, 950))
我得到了结果图:
我尝试了一些选项,例如 .set_aspect(),但我一直收到错误 AttributeError: 'Axes' object has no attribute 'set_aspect'
。我希望主图占整个地块的 2/4,拉图各占 1/2,但我对此有困难。
我在面向对象的环境中工作,所以我不知道这是否会改变一切。我正在使用使用 matplotlib 语法的 Atlasplots 包。 https://atlas-plots.readthedocs.io/en/latest/
我有个主意。 Matplotlib.pyplot
有一组参数,其中一个参数控制绘图的大小。它被称为:rcParams
。这个属性在内部是一个字典,包含了很多配置。看一看:
>>> from matplotlib import pyplot as plt
>>> plt.rcParams
如果您 运行 以上代码行,您将得到 the following。是的,有很多事情,但我们有一个特定的密钥可以解决我们的问题。是"figure.figsize"
,如果你select这个参数是这样的:
>>> plt.rcParams["figure.figsize"] = [6.0, 4.0]
您可以自定义绘图大小。所以我认为您可以在代码的某些位置使用它,并在需要时将其重置为默认值。
要查看默认值是什么,只需 运行 即可根据键 "figure.figsize"
:
获取输出
>>> plt.rcParams["figure.figsize"]
[out]: ["your default", "values here"]
Update: October 1, 2021
我刚刚记得你也可以直接解压subplots
(matplotlib.pyplot.subplots)和select参数,像这样:
>>> fig, ax = plt.subplots(figsize=("the size", "you want"))
我还注意到一些非常有趣的事情。如果您使用 rcParams["figure.figsize"]
来控制绘图大小,它将在整个代码中保持不变,但如果您使用更新中显示的选项,配置将仅适用于该绘图区域。这是我在这里观察到的行为。
我在一个有拉图的地块中工作,我将其定义为:
fig, (ax1, ax2) = aplt.ratio_plot(name= canvasArray[kl], figsize=(800, 800), hspace=0.05)
它工作正常,但现在我需要在图像中添加另一个拉图,所以我尝试了:
fig, (ax1, ax2,ax3) = aplt.subplots(3,1,name="fig1", figsize=(850, 950))
我得到了结果图:
我尝试了一些选项,例如 .set_aspect(),但我一直收到错误 AttributeError: 'Axes' object has no attribute 'set_aspect'
。我希望主图占整个地块的 2/4,拉图各占 1/2,但我对此有困难。
我在面向对象的环境中工作,所以我不知道这是否会改变一切。我正在使用使用 matplotlib 语法的 Atlasplots 包。 https://atlas-plots.readthedocs.io/en/latest/
我有个主意。 Matplotlib.pyplot
有一组参数,其中一个参数控制绘图的大小。它被称为:rcParams
。这个属性在内部是一个字典,包含了很多配置。看一看:
>>> from matplotlib import pyplot as plt
>>> plt.rcParams
如果您 运行 以上代码行,您将得到 the following。是的,有很多事情,但我们有一个特定的密钥可以解决我们的问题。是"figure.figsize"
,如果你select这个参数是这样的:
>>> plt.rcParams["figure.figsize"] = [6.0, 4.0]
您可以自定义绘图大小。所以我认为您可以在代码的某些位置使用它,并在需要时将其重置为默认值。
要查看默认值是什么,只需 运行 即可根据键 "figure.figsize"
:
>>> plt.rcParams["figure.figsize"]
[out]: ["your default", "values here"]
Update: October 1, 2021
我刚刚记得你也可以直接解压subplots
(matplotlib.pyplot.subplots)和select参数,像这样:
>>> fig, ax = plt.subplots(figsize=("the size", "you want"))
我还注意到一些非常有趣的事情。如果您使用 rcParams["figure.figsize"]
来控制绘图大小,它将在整个代码中保持不变,但如果您使用更新中显示的选项,配置将仅适用于该绘图区域。这是我在这里观察到的行为。