Skip to content

TikzFigure

Build TikZ figures programmatically with Python

Try the Interactive TikZ Editor →


Requirements: Python 3.9+, a LaTeX distribution with pdflatex

Terminal window
pip install tikzfigure
from tikzfigure import TikzFigure
fig = TikzFigure()
a = fig.add_node(0, 0, content="A", shape="circle", fill="cyan!40", minimum_size="1cm")
b = fig.add_node(3, 0, content="B", shape="circle", fill="cyan!40", minimum_size="1cm")
c = fig.add_node(0, -2, content="C", shape="circle", fill="cyan!40", minimum_size="1cm")
fig.draw([a, b], arrows="->")
fig.draw([b, c], arrows="->")
fig.show()

Quickstart output

This is the generated Tikz code (str(fig)):

% --------------------------------------------- %
% Tikzfigure generated by tikzfigure v0.1.6 %
% https://github.com/max-models/tikzfigure %
% --------------------------------------------- %
\begin{tikzpicture}
\node[shape=circle, fill=cyan!40, minimum size=1cm] (node0) at (0, 0) {A};
\node[shape=circle, fill=cyan!40, minimum size=1cm] (node1) at (3, 0) {B};
\node[shape=circle, fill=cyan!40, minimum size=1cm] (node2) at (0, -2) {C};
\draw[arrows=->] (node0) to (node1);
\draw[arrows=->] (node1) to (node2);
\end{tikzpicture}