详细内容或原文请订阅后点击阅览
如何使用正交距离拟合生成超紧凑矢量图形
通过使用 ODF 算法拟合贝塞尔曲线来生成高质量、最小的 SVG 图。如何使用正交距离拟合生成超紧凑矢量图形图一文首先出现在 Towards Data Science 上。
来源:走向数据科学1. 简介
是可视化数学函数的自然媒介。对于矢量图形,函数由连接的三次贝塞尔曲线段来近似,这些曲线在显示时被光栅化(即转换为像素)[1]。由于光栅化被延迟,矢量图形图像自然比基于像素的图像更便携,因为渲染可以根据其显示环境进行定制。无论您将矢量图形放大多少,您总是会看到清晰的线段;而如果您将光栅化图像放大得足够大,您最终会看到代表像素的颗粒状块。
虽然矢量图形是一种出色的绘图格式,但生成良好的矢量图形可能具有挑战性。例如,考虑一下我们如何采用 matplotlib [2] 中函数 f(t) = exp(−t)cos(−2πt), 0 ≤ t ≤ 5 的示例图来生成 SVG 图像:
将 matplotlib.pyplot 导入为 plt
将 numpy 导入为 np
定义 f(t):
返回 np.exp(-t) * np.cos(2*np.pi*t)
t = np.arange(0.0, 5.0, 0.02)
plt.plot(t, f(t))
plt.savefig('fig.svg')
