Я рисую измеренные контуры и текст в изображение. Когда я открываю график с помощью plt.show()
, fontsize
и контуры linewidth
- это то, как я его определил. В сохраненном файле (plt.savefig
) эти параметры не передаются или передаются неправильно. Они очень большие по сравнению с показанным изображением.
Я изменил число точек на дюйм и размер, но это не сработало.
fig, ax = plt.subplots()
ax.imshow(img_blank, cmap=plt.cm.gray)
for n, contour in enumerate(cnts):
ax.plot(contour[:, 1], contour[:, 0], linewidth=2)
ax.axis('image')
ax.set_xticks([])
ax.set_yticks([])
for i in range(0, len(mass_centres_x)):
strs= str(i+1)
plt.text(mass_centres_x[i],mass_centres_y[i], strs, fontsize = 5)
plt.savefig(new_name, dpi = 1200)
plt.show()
Альтернатива то же самое здесь:
import numpy as np
from matplotlib import pyplot as plt
import os
img_blank= 255 *np.ones(shape =[ 200, 6000, 3], dtype= np.uint8)
fig, ax = plt.subplots()
ax.imshow(img_blank, cmap=plt.cm.gray)
ax.axis('image')
ax.set_xticks([])
ax.set_yticks([])
plt.text(100,100, 'lol', fontsize = 5)
#save reslut
os.chdir('Your/Folder')
new_name = "olololo.tif"
plt.savefig(new_name, dpi = 1200)
plt.show()
Я ожидал, что сохраненная фигура будет такой же, как показано, но изменения fontsize
и linewidth
.