Kode berikut memplot ke dua file PostScript (.ps), tetapi yang kedua berisi kedua baris.
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab
plt.subplot(111)
x = [1,10]
y = [30, 1000]
plt.loglog(x, y, basex=10, basey=10, ls="-")
plt.savefig("first.ps")
plt.subplot(111)
x = [10,100]
y = [10, 10000]
plt.loglog(x, y, basex=10, basey=10, ls="-")
plt.savefig("second.ps")
Bagaimana saya bisa memberi tahu matplotlib untuk memulai kembali dari plot kedua?
python
matplotlib
plot
Stefano Borini
sumber
sumber
Jawaban:
Anda dapat menggunakan
figure
untuk membuat plot baru, misalnya, atau menggunakanclose
setelah plot pertama.sumber
plt.savefig("first.ps")
?Ada perintah angka yang jelas, dan itu harus dilakukan untuk Anda:
Jika Anda memiliki beberapa subplot dalam gambar yang sama
membersihkan sumbu saat ini.
sumber
Seperti yang dinyatakan dari David Cournapeau, gunakan gambar ().
Atau subplot (121) / subplot (122) untuk plot yang sama, posisi berbeda.
sumber
plt.clf()
, angka disimpan dalam memori sampai ditutup secara eksplisitCukup masukkan
plt.hold(False)
sebelum plt.plot pertama, dan Anda dapat tetap menggunakan kode asli Anda.sumber
Jika Anda menggunakan Matplotlib secara interaktif, misalnya dalam aplikasi web, (misalnya ipython), Anda mungkin mencari
bukannya
plt.close()
atauplt.clf()
.sumber
Jika tidak ada yang berfungsi maka periksa ini .. katakan jika Anda memiliki array data x dan y di sepanjang masing-masing sumbu. Kemudian periksa sel mana (jupyter) yang telah Anda inisialisasi x dan y untuk mengosongkan. Ini karena, mungkin Anda menambahkan data ke x dan y tanpa menginisialisasi ulang mereka. Jadi plot juga memiliki data lama. Jadi periksa itu ..
sumber