在 4K 屏幕上使用带有 TKAgg 或 Qt5Agg 后端的 Matplotlib

Using Matplotlib with TKAgg or Qt5Agg backend on 4K screen

我在 Ubuntu 16.04 上使用带有 Python 3.6 的 Matplotlib 2.0 创建数据图。计算机显示器的分辨率为 4k,分辨率为 3840x2160。情节数字看起来很小,字体很小:

我已经尝试了 Matplotlib 的 TKAggQt5Agg 后端,但是数字 window 在我的 4K 显示器上仍然显得很小。

能否将后端配置为缩放图形 windows 以便在高分辨率显示器上更好地查看?

您需要做的一件事是正确设置 tk scaling 系数。将 tk scaling 命令添加到 .wishrc 文件。 tk scaling wiki 页面有几个工具可用于确定适当的比例因子。

这可能会有所帮助,但最有可能的是,编写 TkAgg 的人还需要投入一些工作来使他们的应用程序在高分辨率显示器上更好地工作(这很有可能)。一般来说,太多的程序是围绕像素大小(实际大小根据分辨率而变化)而不是点或毫米编写的。

而且您的显示可能会变得更糟,因为绘图 canvas 将无法缩放,而其他小部件和字体可能会正确缩放。

由于这是 canvas 显示,要使缩放正常工作将是一项艰巨的工作。

您可能需要找到一种快速来回切换显示器分辨率的方法,以便完成工作。

参考文献:tk scaling , tk scaling (wiki)

您可以使用

告诉 matplotlib 创建高 dpi 图形
plt.figure(dpi=300)

在创建你的情节之前。您可以使用以下方法以更高的 dpi 保存绘图:

plt.savefig("figurename.png", dpi=300)