首页 > 后端开发 > Python教程 > 如何在 Matplotlib 中创建不同大小的子图?

如何在 Matplotlib 中创建不同大小的子图?

Patricia Arquette
发布: 2024-11-30 08:23:13
原创
907 人浏览过

How to Create Subplots with Different Sizes in Matplotlib?

自定义子图的大小

在 Matplotlib 中,可以使用多种方法来创建不同大小的子图。要创建更宽的子图,您可以使用 'fig' 函数。

将 'fig' 与 'subplots' 结合使用

要调整第一个子图的大小,请修改构造函数中的“figsize”参数。但是,更改第二个图的大小需要不同的方法。

import matplotlib.pyplot as plt

# Create a figure and subplots with different width ratios
f, (a0, a1) = plt.subplots(1, 2, width_ratios=[3, 1])

# Add plots to the subplots
a0.plot(data_1)  # Plot data to the first subplot (wider)
a1.plot(data_2)  # Plot data to the second subplot

# Save the figure to PDF
f.savefig('grid_figure.pdf')
登录后复制

使用“子图”和“gridspec_kw”

或者,您可以使用“子图”函数并传递宽度比参数'gridspec_kw'.

import numpy as np
import matplotlib.pyplot as plt

# Generate data
x = np.arange(0, 10, 0.2)
y = np.sin(x)

# Plot using subplots with gridspec_kw
f, (a0, a1) = plt.subplots(1, 2, gridspec_kw={'width_ratios': [3, 1]})

# Add plots to the subplots
a0.plot(x, y)
a1.plot(y, x)

# Save the figure to PDF
f.tight_layout()
f.savefig('grid_figure.pdf')
登录后复制

垂直子图

要创建不同高度的子图,请修改 'gridspec_kw' 中的 'height_ratios' 参数。

# Create a figure and subplots with different height ratios
f, (a0, a1, a2) = plt.subplots(3, 1, gridspec_kw={'height_ratios': [1, 1, 3]})

# Add plots to the subplots
a0.plot(x, y)
a1.plot(x, y)
a2.plot(x, y)

# Save the figure to PDF
f.tight_layout()
f.savefig('grid_figure.pdf')
登录后复制

以上是如何在 Matplotlib 中创建不同大小的子图?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板