我经常使用matplotlibs子图,我得到了这样的结果:
import mumpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots(3, 2, figsize=(8, 10), sharey='row',
gridspec_kw={'height_ratios': [1, 2, 2]})
ax[0, :].plot(np.random.randn(128))
ax[1, 0].plot(np.arange(128))
ax[1, 1].plot(1 / (np.arange(128) + 1))
ax[2, 0].plot(np.arange(128) ** (2))
ax[2, 1].plot(np.abs(np.arange(-64, 64)))
我想创建一个图形,在这个(修改的)gridspec示例中,为两个位置创建一个单独的绘图,就像对ax1
所做的那样:
我知道如果我也会用很多次的环境。也因为子批次可以处理GridSpec参数。遗憾的是,它没有真正解释什么是例外。在
plt.subplots
提供了一种创建完全填充gridspec的方便方法。 例如,而不是你可以写一行
^{pr2}$但是,如果您想自由地选择要填充的网格上的哪些位置,或者甚至要在多个行或列中包含子批,
plt.subplots
将不会有多大帮助,因为它没有任何选项来指定要占用的gridspec位置。 从这个意义上说,文档非常清楚:因为它没有记录任何可以用来实现非直线网格的参数,所以没有这样的选项。在是选择使用
plt.subplots
还是gridspec
则是所需绘图的问题。在某些情况下,两者的结合仍然是有用的当一个普通的网格首先被定义并且只在我们需要一个行跨越图的位置,我们移除轴并使用gridspec创建一个新的轴。在
相关问题 更多 >
编程相关推荐