PyQt Matplotlib颜色控制

时间:2014-05-26 15:52:11

标签: colors matplotlib widget pyqt

使用pyQt 4.8.5在Python 2.7中编写:

如何更改Matplotlib小部件的背景和图形区域(前景?)?我想让图表小工具的背景为“浅灰色”(与GUI的背景颜色相同),我想将图形区域(见下文)设为黑色。

我是使用pyQt进行GUI编程的新手,并希望实现这一目标: enter image description here

我的代码:

self.ui.graph.axes.clear()
self.ui.graph.axes.hold(True)
self.ui.graph.axes.plot(self.Value,'r-')
self.ui.graph.axes.grid()
self.ui.graph.draw()

2 个答案:

答案 0 :(得分:5)

这应该这样做:

ax = self.ui.graph.axes
ax.set_axis_bgcolor('k')
self.ui.graph.set_facecolor('none')

答案 1 :(得分:0)

这对我来说只是部分有用。两个第一行工作正常,但最后一行不起作用。我得到的错误是: AttributeError:'MatplotlibWidget'对象没有属性'set_facecolor'

解决方案是在代码中添加数字:

ax = self.ui.graph.axes
ax.set_axis_bgcolor('k')
self.ui.graph.figure.set_facecolor('none')

一个有趣的注意事项是我一直试图通过使用setPalette()来解决这个问题,但是这个问题在facecolor设置为'none'之后才起作用,然后突然我对调色板所做的所有更改都出现了。