-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Low quality window plots on hidpi display #17440
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
This is likely addressed by #15656. What is the display scaling factor you are using? (probably something between 1 and 2)? |
@chesnokov-yuriy If you change your scaling does it get better? I agree with @timhoffm this is likely due to Qt growing the ability to do fractional scaling under us. |
@tacaswell let me try any different scaling and investigate #15656
on Kubuntu 20.04 situation became different somehow
Only Spyder IDE produces high quality plots both inline and in QtAgg5 UI window even without any 'retina' settings |
@chesnokov-yuriy do you know which Qt version each of the call uses? Remarks:
|
@timhoffm I do not remember which Qt was in Kubuntu 19.10 or 19.04 and which Plasma if only looked up from release specifications. Kubuntu 20.04 Qt is 5.12.8 Kde Plasma 5.18.4 Spyder 4.1.3 provides high quality plots in either inline or Qt5Agg without any additional settings |
display configuration settings global scale 100%: high quality plot display configuration settings global scale 125%: low quality same as 150% sa reported before |
Kubuntu 19.10 Qt 5.12.4 Python 3.7 |
That tracks really well with @timhoffm 's theory that this is related to us not handling the fractional scaling correctly. |
qapp.py file from matplotlib.backends.qt_compat import QtWidgets
qApp = QtWidgets.QApplication([])
print(' logical dpi:', qApp.desktop().logicalDpiX())
print(' physical dpi:', qApp.desktop().physicalDpiX())
print(' width:', qApp.desktop().screenGeometry().width())
print(' height:', qApp.desktop().screenGeometry().height()) bash shell environment
display configuration: 150% scale with 3840x2160
adding QT_SCALE_FACTOR environment variable set to 0.666667 which is 100/150%
using the same QT_SCALE_FACTOR set before plot.py call results in high quality plot with tiny toolbar and status bar, which looks much better though than default large margins
|
This issue should not block tagging the release candidate. |
Is this fixed by #15656? |
Yes, it should be. |
Bug report
Bug summary
Executing python script with line plotting code from command line on a hidpi 4k resolution display produces low quality UI window plot.
Code for reproduction
plot.py file contents:
Actual outcome
Expected outcome
Expected high quality UI window plots as in Spyder IDE running on the same machine
or similar high quality UI window plots from command line in the previous Kubuntu 19 with matplotlib 3.0.3 and Python 3.7
Matplotlib version
print(matplotlib.get_backend())
): Qt5AggThe text was updated successfully, but these errors were encountered: