【发布时间】:2012-03-13 23:37:11
【问题描述】:
我最近发现了 subplots 函数,这似乎是一种比 subplot 设置多个子图更优雅的方式。但是,我似乎无法更改每个子图的轴属性。
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as npx = np.linspace(0, 20, 100)
fig, axes = plt.subplots(nrows=2)
for i in range(10):
axes[0].plot(x, i * (x - 10)**2)
plt.ylabel('plot 1')
for i in range(10):
axes[1].plot(x, i * np.cos(x))
plt.ylabel('plot 2')
plt.show()
仅显示最后一个绘图的 ylabel。 xlabel、xlim 和 ylim 也是如此。
我意识到使用子图的目的是创建子图的通用布局,但是如果将sharex和sharey设置为false,那我不应该可以更改一些参数吗?
一种解决方案是改用 subplot 函数,但我需要这样做吗?
【问题讨论】:
-
您可能希望将您的
plt.ylabel调用移到循环之外。它们都是相同的,每个子图只需要调用一次。
标签: matplotlib subplot