簡體   English   中英

在matplotlib中對齊一行圖

[英]Aligning a row of plots in matplotlib

我使用以下代碼獲得5個子圖,

pylab.subplot(231)
pylab.scatter(x_a, y_a, color='darkorange')
make_diagonal(x_a, y_a)

pylab.subplot(232)
pylab.scatter(x_b, y_b, color='g')
make_diagonal(x_b, y_b)

pylab.subplot(233)
pylab.scatter(x_c, y_c, color='blue')
make_diagonal(x_c, y_c)

pylab.subplot(234)
pylab.scatter(x_d, y_d, color='r')
make_diagonal(x_d, y_d)

pylab.subplot(235)
pylab.scatter(x_e, y_e, color='purple')
make_diagonal(x_e, y_e)

plt.show()

得到下圖,

在此處輸入圖片說明

我想居中對齊最后一行子圖。 我真的很感謝您的幫助。 提前致謝。

這是使用gridspec為您提供的最低工作答案:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec

x = np.linspace(0, 2*np.pi, 100)
y = np.sin(x)

fig = plt.figure(figsize=(10, 6))

# Define the plots here
gs = gridspec.GridSpec(2, 6)
gs.update(wspace=0.5)
ax1 = plt.subplot(gs[0, :2], )
ax2 = plt.subplot(gs[0, 2:4])
ax3 = plt.subplot(gs[0, 4:], )
ax4 = plt.subplot(gs[1, 1:3])
ax5 = plt.subplot(gs[1, 3:5])

# Plot your data here
ax1.plot(x,y, 'darkorange')
ax2.plot(x,y, 'g')
ax3.plot(x,y, 'b')
ax4.plot(x,y,'r')
ax5.plot(x,y,'purple')

產量

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM