【发布时间】:2021-12-26 20:41:09
【问题描述】:
我想在我的应用程序中使用 Python 后端和 qml 前端显示图表,但出现错误。
进口:
import QtCharts 2.3
错误:
module "QtCharts" is not installed
我用maintaince.exe安装了qtcharts
如何解决?
【问题讨论】:
标签: python charts qt-quick pyqt6
我想在我的应用程序中使用 Python 后端和 qml 前端显示图表,但出现错误。
进口:
import QtCharts 2.3
错误:
module "QtCharts" is not installed
我用maintaince.exe安装了qtcharts
如何解决?
【问题讨论】:
标签: python charts qt-quick pyqt6
在 PyQt6 中,图表模块位于一个单独的包中,您必须运行:
python -m pip install PyQt6-Charts PyQt6
另一方面,maintaince.exe 仅适用于 C++,因此安装 QtCharts 不会影响 PyQt6。
下一部分有演示:
import os
from pathlib import Path
import sys
from PyQt6.QtCore import QCoreApplication, Qt, QUrl
from PyQt6.QtWidgets import QApplication
from PyQt6.QtQml import QQmlApplicationEngine
CURRENT_DIRECTORY = Path(__file__).resolve().parent
def main():
app = QApplication(sys.argv)
engine = QQmlApplicationEngine()
filename = os.fspath(CURRENT_DIRECTORY / "main.qml")
url = QUrl.fromLocalFile(filename)
def handle_object_created(obj, obj_url):
if obj is None and url == obj_url:
QCoreApplication.exit(-1)
engine.objectCreated.connect(
handle_object_created, Qt.ConnectionType.QueuedConnection
)
engine.load(url)
sys.exit(app.exec())
if __name__ == "__main__":
main()
import QtQuick
import QtQuick.Controls
import QtCharts
ApplicationWindow {
id: root
width: 640
height: 480
visible: true
title: qsTr("Login Page")
ChartView {
id: chartView
anchors.fill: parent
LineSeries {
XYPoint {
x: 0
y: 0
}
XYPoint {
x: 1.1
y: 2.1
}
}
}
}
注意:在 Qt6 中,不应指定 QML 模块的版本。
【讨论】:
PyQt6-Charts 相同的python?从控制台/CMD 执行python main.py