更改matplotlib中的抗锯齿强度

2024-06-11 12:59:05 发布

您现在位置:Python中文网/ 问答频道 /正文

是否可以在matplotlib中增加抗锯齿? 我仍然可以在我的数据中看到一些别名,我尝试了几个后端,它仍然存在。行的抗锯齿标志已设置。

在这里你可以明白我的意思

enter image description here

这是截图上的一个样本。这可能不是最好的例子,但我想人们可以看到排队的楼梯。它是用wxagg后端拍摄的。

我在Windows7中使用matplotlib版本1.01。

更新: 我已经没有生成前一张图片的代码了,但是我仍然有问题。下面是一个显示别名的简单代码示例。

import numpy as np
import matplotlib
matplotlib.use('wxAgg')
import matplotlib.pyplot as pl
print 'Backend:', pl.get_backend()

x = np.linspace(0,6,100)
y = np.sin(x)

for a in range(10):
    pl.plot( x, a/10.*x, linewidth=1)

pl.show()

它打印的是Backend: WXAgg 最终的情节如下。 aliasing

尤其是较低的红色曲线显示清晰的锯齿。


Tags: 数据代码importbackendmatplotlib标志asnp
2条回答

您添加到问题中的图片已经完全消除了锯齿。没有比这更好的了。查看图像的缩放版本:

Upscaled version of the image in question

如果您将图片保存为.svg文件,您将拥有无限的精度。然后,您可以使用类似于InkScape的内容编辑此.svg,并根据需要获得多少精度/抗锯齿。

相关问题 更多 >