2012-05-11 16 views
13

Bir başlık yazdırmak için suptitle kullanmaya çalışıyorum ve bu başlığı sürekli olarak değiştirmek istiyorum. Şu anda kullanıyorum:Matplotlib suptitle eski başlığın üzerine basılıyor

self.ui.canvas1.figure.suptitle(title) 

nerede rakam matplotlib rakamdır (canvas1 bir mplCanvas, ama bu önemli değildir) ve başlık bir piton dizedir.

Şu anda, bu kod, daha sonra bu kodu yeniden çalıştırdığımda, eski metnin üzerine yeni metni basması ve garip, okunamayan bir başlığa neden olması dışında çalışır.

Sadece yazdırmak yerine, eski suptitle şeklini nasıl değiştirirsiniz?

sayesinde

Tyler

cevap

17

figure.suptitle bir matplotlib.text.Text örneği döndürür. Bunu kaydedip yeni başlığı ayarlayabilirsiniz:

txt = fig.suptitle('A test title') 
txt.set_text('A better title') 
plt.draw() 
+0

Bu işe yaramadı ... hala eskideki eski metni yeni oluşturduğu aynı hatayı yapıyor. – tylerthemiler

+0

Ah, bunu daha çok veya daha az yaptım. Mpl_canvases ile çalışıyordum. Bunu kullanın, self.mpl_canvas_obj.figure.suptitle ('') bir yere kaydedin ve bunu txt alanı olarak kullanın. – tylerthemiler

8

Bu eski parçacığı yeniden diriltiyorum, çünkü bu işe yeni başladım. Figür.texts'deki orijinal yazıyla döndürülen Metin nesnesine bir gönderme var. Matplotlib'de düzeltilene kadar orijinali değiştirmek için bunu kullanabilirsiniz.