Как увеличить расстояние между заголовком и сюжетом в подзаговоре? Как установить стиль шрифта колобар галочки в подплоте? - PullRequest
0 голосов
/ 22 марта 2020

У меня есть два вопроса: 1, я хочу изменить пространство между заголовком и сюжетом; 2, я не знаю, как указать стиль шрифта и размер галочки колобара в подзаговоре; Это требует от меня публикации более подробной информации о моем вопросе, я не знаю, что мне следует предоставить. так что лучше задать вопрос. Почему это очень медленно, когда я добавляю сохранение: plt.savefig ("Fig01.png", dpi = 1000, bbox_inches = 'thin') Это будет стоить много времени для сохранения, и я не могу получить pdf-версию. Я не почему. и я думаю, что цвет в моем сюжете не так хорош. где я могу найти больше цвета?

[![results][1]][1]




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

a1,b1,c1 = np.loadtxt("00_porostiy.txt", unpack=True)
a2,b2,c2 = np.loadtxt("04_porostiy.txt", unpack=True)
a3,b3,c3 = np.loadtxt("04_00_porostiy.txt", unpack=True)

x1=a1.reshape(51,16)
y1=b1.reshape(51,16)
z1=c1.reshape(51,16)

x2=a2.reshape(51,16)
y2=b2.reshape(51,16)
z2=c2.reshape(51,16)

x3=a3.reshape(51,16)
y3=b3.reshape(51,16)
z3=c3.reshape(51,16)

fig, (ax1,ax2,ax3) = plt.subplots(figsize=(12,8), ncols=3)

cet1=ax1.contourf(x1, y1, z1, 100, cmap="jet")
#依据第一个txt文件里的数据绘图,平滑等级100,上色为jet
ax1.set_aspect(aspect=1)
#强制x与y按照1:1
ax1.set_title("Initial", fontname='Helvetica', fontsize = 12)
#设置顶部文字
cet1_bar=fig.colorbar(cet1, ax=ax1, aspect=60)
#在图1旁边绘制图例,图例调窄,调窄因子为80
cet1_bar.outline.set_visible(False)
#图例中黑色边框去掉
#ax1.tick_params(axis='both', which='major', labelsize=12)
ax1.set_xticks([0,2.5,5])
plt.setp(ax1.get_xticklabels(), fontsize=12, fontname="Times New Roman")
plt.setp(ax1.get_yticklabels(), fontsize=12, fontname="Times New Roman")

cet2=ax2.contourf(x2, y2, z2, 100, cmap="jet")
ax2.set_title("10 000 years", fontname='Helvetica', fontsize = 12)
cet2_bar=fig.colorbar(cet2, ax=ax2, aspect=60)
ax2.set_aspect(aspect=1)
cet2_bar.outline.set_visible(False)
ax2.set_xticks([0,2.5,5])
plt.setp(ax2.get_xticklabels(), fontsize=12, fontname="Times New Roman")
plt.setp(ax2.get_yticklabels(), fontsize=12, fontname="Times New Roman")

cet3=ax3.contourf(x3, y3, z3, 100, cmap="jet")
ax3.set_title("Change", fontname='Helvetica', fontweight='bold')
cet3_bar=fig.colorbar(cet3, ax=ax3, aspect=60) 
ax3.set_aspect(aspect=1)
cet3_bar.outline.set_visible(False)
ax3.set_xticks([0,2.5,5])
plt.setp(ax3.get_xticklabels(), fontsize=12, fontname="Times New Roman")
plt.setp(ax3.get_yticklabels(), fontsize=12, fontname="Times New Roman")
plt.subplots_adjust(bottom=0.1, wspace=0.01) #好像不起作用

plt.savefig("Fig01.png",dpi=1000, bbox_inches='tight')
plt.show()

1 Ответ

0 голосов
/ 23 марта 2020
  1. В своем утверждении добавьте 'pad', чтобы увеличить расстояние между сюжетом и заголовком:

    ax1.set_title("Initial", fontname='Helvetica', fontsize = 12, pad=10)
...