python - 如何使用 matplotlib 在 python tkinter 中显示独立于屏幕分辨率的图形?

标签 python tkinter

当我运行这段 python 代码在超高清屏幕上绘图时,图形上的图标和文本看起来太小(如果您能看到的话)。

import matplotlib.pyplot as plt
import numpy as np
import scipy.signal
t = np.linspace(0, 1, 500, endpoint=False)
plt.plot(t, scipy.signal.square(2 * np.pi * 5 * t))
plt.ylim(-2, 2)
plt.show()

这是它的样子: enter image description here

我希望我的应用独立于屏幕分辨率,即图标、文本等显示为某种可接受的大小(例如,在所有分辨率下屏幕的比例相等)。

我该怎么做?谢谢。

最佳答案

可以使用 savefig 的 dpi 参数控制已保存图形的分辨率(以每英寸点数为单位)。 .也许它有助于分辨率较低的显示器

savefig(fname, dpi=None, facecolor='w', edgecolor='w',
        orientation='portrait', papertype=None, format=None,
        transparent=False, bbox_inches=None, pad_inches=0.1,
        frameon=None)

参数定义:

dpi: [ None | scalar > 0 | ‘figure’]

以每英寸点数为单位的分辨率。如果没有,它将默认为 matplotlibrc 文件中的值 savefig.dpi。如果是‘figure’,它会将 dpi 设置为图形的值。

关于python - 如何使用 matplotlib 在 python tkinter 中显示独立于屏幕分辨率的图形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43985025/

相关文章:

python - 字典检索值并记住键

python - 为什么 `describe` 函数使用科学记数法显示 float ?

python - 如何在 macOS 上全屏显示 tkinter 应用程序?

python - 如何将 python 记录器定向到 Tkinker 的列表框?

python - mainloop 阻止 Tkinter 应用程序从 IDLE 运行

python-3.x - Tkinter 在 Treeview 小部件中插入一个 Combobox

python - bbfreeze 和 protobuf

python - 为什么在子类化 tf.keras 层(或模型)类时实现 "call"方法使层(模型)对象可调用?

python - Tkinter 文本小部件 : pressing <Return> key goes to line

python - 在 Spyder 中使用 input() 时 Matplotlib 卡住