標記單一座標而不顯示任何軸

標記單一座標而不顯示任何軸

我正在嘗試畫一個圓並在其上標記一些點,如下所示:

    \begin{tikzpicture}
        \draw (2,2) circle (2cm);
        \fill[black!100!] (1,0.25) circle (0.10cm);
        \fill[black!100!] (4,2) circle (0.10cm);
        \fill[black!100!] (2.4,3.97) circle (0.10cm);
        \fill[red!100!] (2,2) circle (0.10cm);
        \node at (0.5,-0.25) {$(x_1,y_1)$};
        \node at (5,2) {$(x_2,y_2)$};
        \node at (2.4,4.57) {$(x_3,y_3)$};
        \node at (2,1.5) {$(a_1,a_2)$};
    \end{tikzpicture}

哪個繪製了這個:

在此輸入影像描述

當我發現這篇文章時,我正在尋找一種更簡單的方法來標記節點,而無需手動找出每個點相對於繪製點的位置:標記單一座標(pgfplots)。當我嘗試使用 pgf 圖時,我可以輕鬆標記點,但無法刪除顯示的不同軸和圖。有沒有更乾淨的方法來做到這一點?

答案1

  • 使用極座標係可以簡單地定義圓的定位及其標籤。
  • 我建議使用節點來代替繪製圓圈,這可以透過選項輕鬆標記label
\documentclass[tikz, margin=3mm]{standalone}

\begin{document}
    \begin{tikzpicture}[
dot/.style = {circle, fill=#1, minimum size=2mm, inner sep=0pt},
dot/.default = black
                        ]  
% circle
\draw (0,0) circle (2cm);
% nodes
\node [dot=red, label=below:{$(a_1,a_2)$}] {};
\node [dot,label= 85:{$(x_3,y_3)$}] at (85:2) {};
\node [dot,label=  0:{$(x_2,y_2)$}] at ( 0:2) {};
\node [dot,label=240:{$(x_1,y_1)$}] at (240:2) {};
    \end{tikzpicture}
\end{document}

在此輸入影像描述

附錄: 如果您喜歡在上圖中的節點之間繪製線條,那麼您可以簡單地透過命名節點來完成此操作,然後透過\draw (<node name>) -- (<node name>);例如以下方式繪製線條:

\documentclass[tikz, margin=3mm]{standalone}

\begin{document}
    \begin{tikzpicture}[
dot/.style = {circle, fill=#1, minimum size=2mm, 
              inner sep=0pt, outer sep=0pt},
dot/.default = black
                        ]
% circle
\draw (0,0) circle (2cm);
% nodes
\node (O) [dot=red, label=below:{$(a_1,a_2)$}] {};
\node (a) [dot,label= 85:{$(x_3,y_3)$}] at (85:2) {};
\node (b) [dot,label=  0:{$(x_2,y_2)$}] at ( 0:2) {};
\node (c)[dot,label=240:{$(x_1,y_1)$}] at (240:2) {};
% lines
\draw (O) -- (b);
    \end{tikzpicture}
\end{document}

在此輸入影像描述

當然,您可以在極座標定義的兩個座標之間畫線。例如:

\draw (0:0) -- (0:2):

在上面的 MWE 中使用它不會給出與上圖所示相同的結果:線將出現在這些座標處的節點中心之間,同時在上面的 MWE 中是在節點邊界之間。

答案2

    \begin{tikzpicture}
    \draw (2,2) circle (2cm);
    \fill[black!100!] (1,0.25) circle (0.10cm) node[below]{$(x_1,y_1)$};
    \fill[black!100!] (4,2) circle (0.10cm)node[right]{$(x_2,y_2)$};
    \fill[black!100!] (2.4,3.97) circle (0.10cm)node[above]{$(x_3,y_3)$};
    \fill[red!100!] (2,2) circle (0.10cm)node[below] {$(a_1,a_2)$};
    \end{tikzpicture} 

相關內容