通常有几篇(example)SO帖子涉及如何将GridSpec与子图一起使用。
我试图无济于事的是,允许将GridSpecsubplots一起使用,就像这样,在这里我可以用一些循环控制的索引替换实际的Array和list索引:

gs = gridspec.GridSpec(4, 1, height_ratios=[2, 2, 1, 1])
tPlot, axes = plt.subplots(4, sharex=True, sharey=False)
tPlot.suptitle(node, fontsize=20)
axes[0].plot(targetDay[0], gs[0])
axes[1].plot(targetDay[1], gs[1])
axes[2].scatter(targetDay[2], gs[2])
axes[3].plot(targetDay[3], gs[3])

不用说此代码不起作用,它只是一个示例。

最佳答案

您可以使用gridspec.GridSpec参数从subplots调用中将kwargs发送到GridSpec,而不是在subplots之前调用gridspec_kw。从docs:



因此,例如:

import matplotlib.pyplot as plt

tPlot, axes = plt.subplots(
        nrows=4, ncols=1, sharex=True, sharey=False,
        gridspec_kw={'height_ratios':[2,2,1,1]}
        )

tPlot.suptitle('node', fontsize=20)

axes[0].plot(range(10),'ro-')
axes[1].plot(range(10),'bo-')
axes[2].plot(range(10),'go-')
axes[3].plot(range(10),'mo-')

plt.show()

python - 如何在 `GridSpec()`中使用 `subplots()`-LMLPHP

关于python - 如何在 `GridSpec()`中使用 `subplots()`,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34268742/

10-11 16:33