在matplotlib中将asnap hlines和vlines对齐至整像素
vlines( T(x), T(ylo), T(yhi), linewidth=Twidth(.5) )
我想在屏幕上画一些水平线和垂直线,让它们完全占据整个位像素,而不是像平常那样跨越几个像素(那样会变得模糊)。
有没有什么变换 T() 可以做到这一点?或者,有没有办法告诉某个 Mac 后台(我用的是 Qt4agg)来实现这个效果?
1 个回答
3
你是想关闭抗锯齿功能吗?
比如说:
import matplotlib.pyplot as plt
x = [1, 4, 7]
ylow = [0, 3, -2]
yhigh = [1, 4, 2]
width = [8, 15, 6]
plt.vlines(x, ylow, yhigh, linewidth=width,
antialiased=False)
plt.axis([0, 8, -4, 5])
plt.show()