【发布时间】:2023-03-13 03:06:01
【问题描述】:
我已经开始使用 matplotlib-venn 来绘制维恩图。这是一个非常有用的工具,但我想知道生成的图形是否可以保存为 SVG(甚至是 pdf)格式。我想保留图形矢量,而不是像 png 那样将其栅格化。
我认为有办法,所以如果你能指出我,那将非常有帮助。
【问题讨论】:
标签: python svg matplotlib-venn
我已经开始使用 matplotlib-venn 来绘制维恩图。这是一个非常有用的工具,但我想知道生成的图形是否可以保存为 SVG(甚至是 pdf)格式。我想保留图形矢量,而不是像 png 那样将其栅格化。
我认为有办法,所以如果你能指出我,那将非常有帮助。
【问题讨论】:
标签: python svg matplotlib-venn
您可以使用标准的savefig 方法。只需为您的输出路径添加“.svg”扩展名即可:
from matplotlib_venn import venn2
import matplotlib.pyplot as plt
venn2(subsets = (3, 2, 1))
plt.savefig('venn2.svg')
您可以使用.png 扩展名保存为PNG,并且...您可能会看到其他格式的情况。
【讨论】:
看起来你需要配置 SVG '后端':
matplotlib 前端或 matplotlib API 是一组类 做繁重的工作,创建和管理图形、文本、线条, 情节等(艺术家教程)。这是一个抽象接口 对输出一无所知。后端是依赖于设备的绘图 设备,又称渲染器,将前端表示转换为 硬拷贝或显示设备(什么是后端?)。后端示例: PS 创建 PostScript® 硬拷贝,SVG 创建可缩放矢量图形 硬拷贝,...
> # The default backend; one of GTK GTKAgg GTKCairo GTK3Agg GTK3Cairo
> # CocoaAgg MacOSX Qt4Agg Qt5Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG
> # Template.
> # You can also deploy your own backend outside of matplotlib by
> # referring to the module name (which must be in the PYTHONPATH) as
> # 'module://my_backend'. backend : qt4agg
【讨论】: