2017-11-14 9 views
0

그림의 배경색은 어떻게 설정합니까? FigureCanvasQTAgg를 사용하고 싶습니다.그림 캔버스 색 (PyQt)을 변경하는 방법

from PyQt5 import QtCore, QtWidgets, QtWidgets 
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg 
from matplotlib.backends.backend_qt5 import NavigationToolbar2QT 
from matplotlib.figure import Figure 


class FigureCanvas(FigureCanvasQTAgg): 
    def __init__(self, parent=None, width=5, height=4, dpi=100): 
     self.fig = Figure(figsize=(width, height), dpi=dpi) 
     FigureCanvasQTAgg.__init__(self, self.fig) 
     self.setParent(parent) 
     FigureCanvas.setSizePolicy(
      self, 
      QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding, 
     ) 
     FigureCanvas.updateGeometry(self) 

답변

3

은 그림의 배경과 캔버스 배경 사이에는 차이가 없다. 그래서 (내가 지금 어떤 이유로 생각,하지만 어쩌면 하나의 유스 케이스가 없습니다) 일부 색상은 그림의 배경 색상을 변경하지 않는 경우

self.fig.set_facecolor("blue") 

에 그림 배경을 설정할 수 있습니다, 당신은

self.fig.set_facecolor("none") 
self.setStyleSheet("background-color:blue;") 

This answer of mine

약간의 통찰력과도 함께 플레이 할 수있는 테스트 코드를 제공, 캔버스 배경 색상은 빛을 발하게 할 수있는 그림 배경, 투명 등 수 있도록해야합니다.

1

내가하기 matplotlib를 사용하지 않으며,이 답변을 테스트하지만, 여기 추측 적이 ...

self.setStyleSheet("background-color:red;") 

? 일반적인 상황에서

(일부 other answer 기준)

+1

"다른 답변"의 저자는 다음과 같이 말합니다 : 예,하지만 캔버스 배경의 붉은 색을 볼 수 있도록 그림을 투명하게 만들어야합니다. 내 대답을 보라. Btw. 만약 당신이 다른 답변의 내용을 사용한다면 그것을 업 프리 팅하는 것이 좋지 않을 것입니다 - 어떻게 든 그것을 사용하면 유용하다는 것을 알았습니까? – ImportanceOfBeingErnest

+0

@ImportanceOfBeingErnest - obv. 둘 다 upvoted. –

관련 문제