#python #matplotlib
#python #matplotlib
Вопрос:
Я пытаюсь построить 3 дендрограммы, 2 сверху и одну снизу. Но единственный способ, которым я понял это:
fig, axes = plt.subplots(2, 2, figsize=(22, 14))
dn1 = hc.dendrogram(wardLink, ax=axes[0, 0])
dn2 = hc.dendrogram(singleLink, ax=axes[0, 1])
dn3 = hc.dendrogram(completeLink, ax=axes[1, 0])
Дает мне четвертый пустой график в правом нижнем углу. Есть ли способ построить только 3 графика?
Ответ №1:
Вы можете повторно выделить область холста по своему усмотрению и использовать 3-й аргумент subplot
, чтобы указать, в какую ячейку отображать:
plt.subplot(2, 2, 1) # divide as 2x2, plot top left
plt.plt(...)
plt.subplot(2, 2, 2) # divide as 2x2, plot top right
plt.plt(...)
plt.subplot(2, 1, 2) # divide as 2x1, plot bottom
plt.plt(...)
Вы также можете использовать a gridspec
следующим образом:
gs = fig.add_gridspec(2, 2)
ax1 = fig.add_subplot(gs[0, 0])
ax2 = fig.add_subplot(gs[0, 1])
ax3 = fig.add_subplot(gs[1, :])
...