I'm trying to get a figure made with tikz to be centered exactly on the figure's own internal x-axis. I don't want to use \centering, as at least with its default behaviour, \centering finds its own center line based on the actual width of the tikzpicture as a whole. What I'm looking for is a way to center it on a chosen point, completely disregarding the actual width of the figure.
MWE of \centering's behaviour:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{figure}\centering
\begin{tikzpicture}
\draw (-3,0) -- (2,0);
\path (0,2) node [shape=circle,draw] {};
\end{tikzpicture}
\caption{This figure should be centered on x=0, marked by the circle. It isn't.}
\end{figure}
\end{document}
In short, I'm looking for a way to take this exact figure, off-center line included, and place it inside the figure float in such a way that the circle at x=0 is what's centered above the caption (with the line off-center). Is such a thing possible? What does it involve?


\path (3,0);to your picture, it is.... These are relative coordinates and TikZ computes the bounding box on the basis of the things you draw in the picture. The coordinates have no absolute meaning (unless you work with absolute page coordinates). – Apr 10 '19 at 18:58\paththat alters the bounding box size? Makes sense, and seems to solve my problem just fine! – Sjiveru Apr 10 '19 at 19:03(0,0). – Apr 10 '19 at 19:04