# Tikz line doesn't start exactly from node coordinates

I have an issue with the \draw command in Tikz, where I attempt to draw a line between two nodes and there is an offset between the start/end of the line and the actual coordinates of the nodes defined. As an example of the issue, here I'm trying to draw a triangle between the three points (0,0), (1,0), and (1,1):

\begin{tikzpicture}
\node (a) at (0,0) {};
\node (b) at (1,0) {};
\node (c) at (1,1) {};
\draw (a) -- (b);
\draw (b) -- (c);
\draw (a) -- (c);
\end{tikzpicture}


but it returns this. Does anyone know why it works like this, and an alternative to \draw that would (in this case) draw the full triangle?

Most of the gaps come from inner sep, which is >0 per default.

However I think for your use case, a \coordinate would be better suited. And if you draw all three lines in one go, they will be nicely connected at the corners.

\documentclass{standalone}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}[inner sep=0pt]
\node (a) at (0,0) {};
\node (b) at (1,0) {};
\node (c) at (1,1) {};
\draw (a) -- (b);
\draw (b) -- (c);
\draw (a) -- (c);
\end{tikzpicture}

\begin{tikzpicture}
\coordinate (a) at (0,0);
\coordinate (b) at (1,0);
\coordinate (c) at (1,1);
\draw (a) -- (b) -- (c) -- cycle;
\end{tikzpicture}
\end{document}

• Thank you so much! 🙏