I want to keep centered first drawn node, node number 1 on the given example. It remains centered until I start drawing arrows. Hence, when I draw arrows on top of the figure everything shifts to left.
Is it possible to prevent shifting of nodes after drawing arrows and keep the first drawn node centered?
\documentclass[journal,twocolumn]{IEEEtran}
\usepackage{tikz}
\usetikzlibrary{positioning,arrows}
\usetikzlibrary{arrows.meta,
backgrounds,
fit,
positioning}
\usetikzlibrary{shapes}
\usetikzlibrary{calc,shapes.multipart,chains,arrows}
\usetikzlibrary{fit, positioning, shapes.geometric, shapes.symbols}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}[
node distance=0.5cm and 1cm,
FIT/.style = {draw,dashed, fill=yellow!30, inner sep=2mm, fit=#1},
arrow/.style={->, >=stealth, semithick},
arroww/.style={->, semithick},
compute/.style={draw,semithick,
append after command={%
(\tikzlastnode.south west) edge[double=gray!50,double distance=2pt,
line cap=rect,
shorten >=-0.1pt,shorten <=-0.1pt]
(\tikzlastnode.south east)}},
Cylinder/.style={shape=cylinder, shape border rotate=90, draw, shape aspect=0.2 ,font={\baselineskip=9pt}, inner xsep=+3pt,},
N/.style = {circle,draw, draw=black, fill=white,minimum size=5mm, inner sep =1mm},
]
\node[N] (w1) {1};
\node[N, below=of w1,inner sep=1.5pt] (w2) {14};
\node[N, below=of w2,inner sep=1.5pt] (w3) {2};
\node[N, below=of w3,inner sep=1.5pt] (w4) {5};
\node[N, below=of w4,inner sep=1.5pt,xshift=1cm] (w5) {3};
\node[N, below=of w5,inner sep=1.5pt] (w6) {10};
\node[N, below=of w6,inner sep=1.5pt] (w7) {7};
\node[N, below=of w7,inner sep=1.5pt,xshift=-1cm] (w8) {11};
\node[N, right=of w6,inner sep=1.5pt] (w9) {4};
\node[N, below=of w8,inner sep=1.5pt] (w10) {9};
\node[N, below=of w10,inner sep=1.5pt] (w11) {12};
\draw[arroww] (w4) edge (w8);
\draw[arroww] (w2) edge (w3);
\draw[arroww] (w3) edge (w4);
\draw[arroww] (w4) edge (w5);
\draw[arroww] (w5) edge (w6);
\draw[arroww] (w6) edge (w7);
\draw[arroww] (w7) edge (w8);
\draw[arroww] (w5) edge (w9);
\draw[arroww, out=330,in=15,looseness=1] (w3) edge (w8);
\draw[arroww, out=330,in=90,looseness=1] (w1) edge (w9);
\draw[arroww, out=320,in=0,looseness=0.8] (w1) edge (w8);
\draw[arroww, out=320,in=0,looseness=1.4] (w2) edge (w11);
\end{tikzpicture}
\caption{DAG.}
\end{figure}
\end{document}
output:
Afterwards, I have uncommented the lines for the arrow, and you can see that it has been shiftled to left:


\node[N,inner sep=1.5pt,above=of w1,xshift=-1cm] (w1) {1};– JamesT Oct 11 '23 at 14:13