pyqt用QWidget和QtChart库实现显示折线图
时间: 2024-05-15 13:15:40 浏览: 163
QT好看的背景图片,PYQT界面设计
以下是一个使用PyQt的QWidget和QtChart库来显示折线图的示例代码:
```
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout
from PyQt5.QtChart import QChart, QLineSeries, QChartView
class LineChart(QWidget):
def __init__(self):
super().__init__()
# 创建折线图
series = QLineSeries()
series.append(0, 6)
series.append(2, 4)
series.append(3, 8)
series.append(7, 4)
series.append(10, 5)
chart = QChart()
chart.legend().hide()
chart.addSeries(series)
chart.createDefaultAxes()
# 创建图表视图
chart_view = QChartView(chart)
chart_view.setRenderHint(QPainter.Antialiasing)
# 创建主窗口布局
layout = QVBoxLayout()
layout.addWidget(chart_view)
self.setLayout(layout)
self.setWindowTitle('折线图')
if __name__ == '__main__':
app = QApplication(sys.argv)
line_chart = LineChart()
line_chart.show()
sys.exit(app.exec_())
```
在这个示例中,我们创建了一个名为LineChart的QWidget子类,该类包含一个折线图和一个图表视图。折线图由QLineSeries对象创建,该对象添加了一些数据点。然后使用QChart对象将该折线系列添加到图表中,并创建默认的坐标轴。最后,我们将图表视图添加到主窗口布局中并显示窗口。
运行这个示例会显示一个包含折线图的窗口。您可以在折线图中缩放和平移,并通过鼠标悬停在数据点上来查看数据点的值。
阅读全文