Zapis wykresu do pliku.

Zapis wykresu do pliku.
IS
  • Rejestracja:ponad 9 lat
  • Ostatnio:około 5 lat
  • Postów:49
0

Witam,
Generuję sobie z danych wykres za pomocą plota, ale chciałbym je zapisać do pliku np .png
Znalazłem już jakieś rozwiązanie, ale niestety plik, który zostaje zapisany nie ma w sobie wykresu, posiada tylko białe tło, co robię nie tak?

Kopiuj
blad = np.array(blad)
czas = np.array(czas)

figure(1, figsize=(40, 25)) 
plt.grid(True) 
plt.plot(czas,blad)
plt.show()
plt.savefig("dane.jpg")
plt.savefig("dane.pdf")

Te bilbioteki importuję:

Kopiuj
from matplotlib.pyplot import figure
import matplotlib.pyplot as plt 
import numpy as np
import math

Jak już pytam, to jeszcze chciałbym zapytać jak łatwo zrobić podział osi w plocie?

y2evp5in
  • Rejestracja:ponad 6 lat
  • Ostatnio:ponad 5 lat
  • Postów:9
0

plt.savefig(str) zapisuje obrazy w formacie png wiec zmien "dane.jpg" na "dane.png"

Kopiuj
from matplotlib.pyplot import figure
import matplotlib.pyplot as plt 

Jezeli importujesz cala biblioteke i dodajesz jeszcze as to lepiej po prostu uzywac plt.figure i usunac from matplotlib.pyplot import figure tak jest czytelniej.

Mozesz rozwinac co rozumiesz poprzez "podział osi"?

lion137
  • Rejestracja:około 8 lat
  • Ostatnio:2 minuty
  • Postów:4939
0

Z dokumentacji : "If format is None and fname is a string, the output format is deduced from the extension of the filename. If the filename has no extension, the value of the rc parameter savefig.format is used." Więc nie jest prawdą: "plt.savefig(str) zapisuje obrazy w formacie png"


IS
  • Rejestracja:ponad 9 lat
  • Ostatnio:około 5 lat
  • Postów:49
0

Zapomniałem zmienić to, bo próbowałem z różnymi formatami, nawet w pdf. W każdym zapisanym pliku pojawiał się biały prostokąt.

A co do podziału osi to chodziło mi o dobór jednostek z jakich będą wychodzić kratki(gridy). Np python ustawia na osi OX zaznaczone 0,1,2,3,4,5,6,7 itp, a ja chciałbym, żeby było 0,10,20,30...

BA
  • Rejestracja:około 6 lat
  • Ostatnio:około 6 lat
  • Postów:1
1

linia z poleceniem zapisu do pliku musi być powyżej, przed plt.show(), w przeciwnym wypadku będzie utworzony pusty plik

edytowany 2x, ostatnio: bask

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.