2016-12-13 10 views
1

Qtアプリケーションのウィジェットに埋め込まれたmatplotlib図形があります。既存の図形の変更スタイル

私はこのようにそれを作成します。

from matplotlib.figure import Figure 
matplotlib.use('Qt4Agg') 
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas 

self.figure = Figure() 
self.widget = FigureCanvas(self.figure) 

チャートの寿命と私はいくつかの行を追加することができますウィジェットの際、バー、私が使用してチャートをクリアするなどを軸:

self.figure.clear() 
self.figure.canvas.draw() 

追加するにはいくつかの行:私は破壊し、私は数字にそれが変更されるたびに再作成しないことを意味

ax = self.figure.add_subplot(111) 
ax.plot(x, values, etc...) 
self.figure.canvas.draw() 

既存の図を再利用する。しかし、matplotlib.pyplot.styleのようなものを使ってFigureの完全なスタイルを変更するオプションがありますか?あるいは、スタイルを変更したいときはいつも新しいフィギュア(そして新しいウィジェット)を作成する必要がありますか?

答えて

1

スタイルを変更すると、rcParamsが変更されたようなものですが、既に作成されたオブジェクトのプロパティは変更されません。これは、matplotlibが動作する方法にはうまく適合しません。

プロットを操作するときに、目盛りラベルなどのオブジェクトが作成されることに注意してください。ズーム/パンすると、新しいチックラベルが作成され、スタイル/ rcParamsの変更が反映されます。

オブジェクトを再作成するか、オブジェクトのプロパティを明示的に変更するコードを作成するかを選択できます。

関連する問題