Matplotlib нужна фигура (и в настоящее время также холст), чтобы на самом деле можно было что-либо визуализировать.Таким образом, для создания SVG-файла, единственным содержимым которого является текст (формула математического текста), вам все еще нужны фигура и холст, а текст должен фактически находиться внутри фигуры, чего можно достичь с помощью fig.text(..)
.Затем вы можете сохранить фигуру в SVG через fig.savefig(..)
.Использование параметра bbox_inches="tight"
обеспечивает обрезку рисунка по размеру текста.При установке прозрачного цвета для лица удаляется фоновый участок фигуры.
from matplotlib.backends.backend_agg import FigureCanvasAgg
from matplotlib.figure import Figure
fig = Figure(figsize=(5, 4), dpi=100)
canvas = FigureCanvasAgg(fig)
fig.text(.5, .5, r'$\int_{0}^{t} x^2 dx = \frac{t^3}{3}$', fontsize=40)
fig.savefig("output.svg", bbox_inches="tight", facecolor=(1,1,1,0))