我发布了一个question前一段时间询问 Tkinter 后端,随后忘记了它,但我已经意识到我正在使用 pyqt 后端。有解决办法吗?
原始问题:
所以看起来 matplotlib gui 图(a la plt.show())不适应显示器分辨率并且在高分辨率屏幕上显得很小。是否有 matplotlib+Pyqt 修复,或者我是否在 Windows 设置中的某个地方摆弄?
谢谢
请您参考如下方法:
在应用加载之前,而不是在加载期间。
插入:
if hasattr(QtCore.Qt, 'AA_EnableHighDpiScaling'):
PyQt5.QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling, True)
if hasattr(QtCore.Qt, 'AA_UseHighDpiPixmaps'):
PyQt5.QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, True)
像这样:
import PyQt5
from PyQt5 import QtCore, QtGui, uic, QtWidgets
from PyQt5.QtWidgets import QWidget
if hasattr(QtCore.Qt, 'AA_EnableHighDpiScaling'):
PyQt5.QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling, True)
if hasattr(QtCore.Qt, 'AA_UseHighDpiPixmaps'):
PyQt5.QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, True)
class MyWindow(PyQt5.QtWidgets.QMainWindow):
def __init__(self):
super(MyWindow, self).__init__()
如果仍然不起作用,请在用户 en var 而不是系统 en var 中。
QT_AUTO_SCREEN_SCALE_FACTOR=2
