Bagaimana cara memposisikan node yang berpusat di atas dua node lainnya?
Aug 20 2020
Saya memiliki dua node dan ingin menempatkan node ketiga di tengah di atasnya. Pada contoh di bawah ini, posisi vertikal node Z adalah baik. Namun, saya ingin memindahkan node Z lebih jauh ke kanan untuk dipusatkan relatif terhadap dua node di bagian bawah. Apakah ada perintah interpolasi yang mirip dengan above=of x!0.5!y
atau cara sederhana lain untuk melakukan ini?
Contoh:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning,arrows.meta,fit,calc,backgrounds,shapes.geometric}
\begin{document}
\begin{tikzpicture}
\node[circle, draw=black] (x) {$x$};
\node[circle, draw=black, right=of x] (y) {$y$};
\node[circle, draw=black, above=of x] (z) {$z$};
\path (x) edge[->, sloped, anchor=south] node {left} (z);
\path (z) edge[->, sloped, anchor=south] node {right} (y);
\path (x) edge[->, sloped, anchor=north] node {bottom} (y);
\end{tikzpicture}
\end{document}
Keluaran:

Saya mengetahui pertanyaan terkait simpul pusat tikz di bawah 2 simpul lain tetapi jawabannya tampaknya menyarankan right above=x
yang tidak benar-benar memusatkan simpul antara X dan Y.
Jawaban
4 Zarko Aug 20 2020 at 01:26
Seperti ini:

\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{arrows.meta,
calc,
positioning,
quotes}
\begin{document}
\begin{tikzpicture}[
node distance = 13mm,
C/.style = {%C: as circle
circle, draw, minimum size=1.5em, inner sep=2pt},
every edge/.style = {draw, -Straight Barb},
every edge quotes/.style = {auto, font=\footnotesize, inner sep=1pt, sloped}
]
\node[C] (x) {$x$};
\node[C, right=of x] (y) {$y$};
\node[C, above=of $(x.north)!0.5!(y.north)$] (z) {$z$};
\path (x) edge["left"] (z)
(z) edge["right"] (y)
(x) edge["bottom"] (y);
\end{tikzpicture}
\end{document}
1 AndréC Aug 20 2020 at 01:40
Cara lain dengan on grid
opsi.

\documentclass[border=5mm,tikz]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
\begin{scope}[on grid,node distance=2cm]
\draw[help lines](-1,-1) grid(3,3);%<-- comment this line to hide the grid
\node[circle, draw=black] (x) {$x$};
\node[circle, draw=black, right=of x] (y) {$y$};
\node[circle, draw=black, above right=2cm and 1cm of x] (z) {$z$};
\end{scope}
\path (x) edge[->, sloped, anchor=south] node {left} (z);
\path (z) edge[->, sloped, anchor=south] node {right} (y);
\path (x) edge[->, sloped, anchor=north] node {bottom} (y);
\end{tikzpicture}
\end{document}
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Jana Duggar: Semua yang Dia Katakan Tentang Cinta dan Jendela 5 Tahunnya untuk Menemukan 'Yang Satu'