2016-12-13 1 views
1

Qt 애플리케이션의 위젯에 matplotlib 그림이 삽입되어 있습니다.기존 그림의 변경 스타일

내가 이런 식을 만들 :

self.figure.clear() 
self.figure.canvas.draw() 
: 바 차트의 수명 동안

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) 

위젯은 내가 몇 줄을 추가 할 수 있습니다, 내가 사용하는 차트를 지우려면 등 축

추가하려면 몇 가지 라인 : 나는 파괴하고, 내가 그림에게이 변경 될 때마다 다시하지 않는 것을 의미

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

기존 그림을 재사용합니다. 그러나 평생 동안 matplotlib.pyplot.style과 같은 것을 사용하여 그림의 전체 스타일을 변경하는 옵션이 있습니까? 또는 스타일을 변경하고 싶을 때 항상 새로운 그림 (및 새로운 위젯)을 만들어야합니까?

답변

1

스타일을 변경하면 rcParams을 변경하는 것과 비슷하지만 이미 만든 개체의 속성은 변경되지 않습니다. 이것은 matplotlib가 작동하는 방식과 잘 맞지 않습니다.

일부 개체는 플롯과 상호 작용할 때 생성됩니다 (예 : 눈금 레이블). 확대/축소 및 이동할 때 새로운 눈금 레이블이 즉시 작성되고 스타일/rcParams의 변경 사항을 반영 할 수 있습니다.

개체를 다시 만들고 그 속성을 명시 적으로 변경하는 코드를 작성할 수 있습니다.