Как изменить имя изображения для l oop на конкретное c число - PullRequest
0 голосов
/ 12 апреля 2020

Мой код генерирует разные изображения в разных папках. Каждая папка содержит одно изображение. Имя изображения в каждой папке именуется последовательно, например, папка 0 содержит изображение 0.png, папка 1 содержит 1.png, а папка 2 содержит 2.png и т. Д. Но я не хочу, чтобы код перечислял изображения и называл их последовательно. Вместо этого я хочу назвать каждое изображение в каждой папке по 0. Как и папка 0 содержит 0.png, папка 1 содержит 0.png, а папка 2 содержит 0.png и т. Д.

from skimage import io

import matplotlib.pyplot as plt

import scipy.io as spio

import numpy as np

import os


pixels = 600

my_dpi = 100

num_geo=10

## Load coordinates

mat = spio.loadmat('coordinateXY.mat', squeeze_me=True)
coord = mat['coordxy']*10

# -----------------------Initialize Geometry--------------------------------------------- 

def geometry_5x3x1024(num_geo):
    for i in range(num_geo):
        fig = plt.figure(num_geo,figsize=( pixels/my_dpi,  pixels/my_dpi),facecolor='k', dpi=my_dpi)  
        plt.axes([0,0,1,1])
        rectangle = plt.Rectangle((-300, -300), 600, 600, fc='k')
        plt.gca().add_patch(rectangle)
        polygon = plt.Polygon(coord[:, :, i],color='w')
        plt.gca().add_patch(polygon)
        plt.axis('off')
        plt.axis([-300,300,-300,300])

        os.mkdir("fig/%d" % i)

        plt.savefig('fig/%d/%d.png' % (i,i), dpi=my_dpi)
        plt.close() 

    return fig 

1 Ответ

1 голос
/ 12 апреля 2020

Почему бы вам просто не использовать жестко закодированное значение как

plt.savefig('fig/%d/0.png' % (i), dpi=my_dpi)

или с переменной

count = 0
plt.savefig('fig/%d/%d.png' % (i, count), dpi=my_dpi)
...