Python: графики без сохранения данных в изображениях

Я строю графики для датчиков и сохраняю изображения в формате png... файлы сохраняются, но они пустые, и когда я запускаю файл, только первый график заполняется информацией. и мне нужно разделить их на свои собственные массивы без жесткого кодирования

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

#file_name = sys.argv[1]

with open('bindata.bin', "rb") as fin:
n_points = int(np.fromfile(fin, dtype=np.float32, count = 1))
n_sensors = int(np.fromfile(fin, dtype=np.float32, count = 1))

print 'Number of measurements per sensor: ', int(n_points)
print 'Number of sensors: ', int(n_sensors)
pressure = n_points * n_sensors
print 'Pressure data: ', pressure

#go back to the beginning of the file
fin.seek(0)

pfluc_dtype = np.dtype([
   ("n_points", np.float32),
   ("n_sensors", np.float32),
   ("velocity1", np.float32),
   ("velocity2", np.float32),
   ("fs_velocity", np.float32),
   ("n_locations", (np.float32, n_sensors)),
   ("cavity_dims", (np.float32,3)),
   ("ref_pressure", np.float32),
   ("pressure", (np.float32, pressure))
   ])
data = np.fromfile(fin, dtype=pfluc_dtype, count =1)

parray = data['pressure'].reshape((n_points,n_sensors))

#print header from list
output = open("header.txt", "wb")
[output.write(x) for x in list(pfluc_dtype.names)]



plt.plot(parray[:524288])
plt.show()
plt.savefig('figure1a.png')
plt.plot(parray[524288:1048576])
plt.show()
plt.savefig('figure2a.png')
plt.plot(parray[1048576:1572864])
plt.show()
plt.savefig('figure3a.png')
plt.plot(parray[1572864:2097152])
plt.show()
plt.savefig('figure4a.png')
plt.plot(parray[2097152:2621440])
plt.show()
plt.savefig('figure5a.png')
plt.plot(parray[2621440:3145728])
plt.show()
plt.savefig('figure6a.png')

1 ответ

Бьюсь об заклад, проблема в команде plt.show(). Я думаю, что для правильной работы этого кода вам необходимо закрыть каждую цифру, прежде чем переходить к следующей. Попробуйте закомментировать все команды plt.show(). Так что ваши графики не будут появляться при запуске скрипта, но я думаю, что они сохранятся правильно.

Другие вопросы по тегам