如何在 PySide2 中更改图形的颜色

Posted

技术标签:

【中文标题】如何在 PySide2 中更改图形的颜色【英文标题】:How to change the color of a graph in PySide2 【发布时间】:2019-03-28 22:07:31 【问题描述】:

我正在 PySide2 中制作一个简单的图表,只是想知道您是否可以将颜色更改为其他颜色。这是目前我的代码。

series = QtCharts.QLineSeries()

series.append(0,0)
series.append(1,7)
series.append(1.2,14)
series.append(1.3,21)
series.append(1.4,28)
series.append(1.5,35)

self.chartView = QtCharts.QChartView(self)
self.chartView.chart().addSeries(series)
self.chartView.chart().createDefaultAxes()
self.chartView.resize(600, 480)

任何帮助都会很棒

【问题讨论】:

忘了说,线的颜色 【参考方案1】:

如果你想改变线条的颜色,你必须用setColor()设置它:

from PySide2 import QtGui, QtWidgets
from PySide2.QtCharts import QtCharts

class MainWindow(QtWidgets.QMainWindow):
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)

        series = QtCharts.QLineSeries()
        series.append(0,0)
        series.append(1,7)
        series.append(1.2,14)
        series.append(1.3,21)
        series.append(1.4,28)
        series.append(1.5,35)

        self.chartView = QtCharts.QChartView()
        self.chartView.chart().addSeries(series)
        self.chartView.chart().createDefaultAxes()
        self.setCentralWidget(self.chartView)
        series.setColor(QtGui.QColor("salmon"))

if __name__ == '__main__':
    import sys
    app = QtWidgets.QApplication(sys.argv)
    w = MainWindow()
    w.resize(640, 480)
    w.show()
    sys.exit(app.exec_())

如果要改变背景颜色必须使用QChart()的setCackgroundBrush()方法:

self.chartView.chart().setBackgroundBrush(QtGui.QColor("gray"))

【讨论】:

以上是关于如何在 PySide2 中更改图形的颜色的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Pyside2 的 QTabWidget 中更改特定选项卡的字体?

每次监听器执行时如何更改面板的图形?

QTableview,PySide2中单元格的背景颜色

如何更改expandableListView的箭头颜色? [关闭]

如何在 PySide2 中添加边框或设置透明 QLayout?

如何从matplotlib中的图形中检索颜色条实例