向 chronodex 添加标签和刻度

向 chronodex 添加标签和刻度

之上@MS-SPO 的建议,我在这里包含了重构的代码。我仍然需要添加一些刻度、指示时间的标签和小时节点(12、3、6、9)。我确实想出了添加节点的方法,但它们并不是我想要的。

\documentclass[10pt,border=5mm,tikz]{standalone}
\usepackage{tikz}

\begin{document}

% ~~~ refactored code ~~~~~~~~~~~~~~~
\begin{tikzpicture}
    % Grid

    \foreach \i in {1,2,...,6}
        % ~~~ make it visible for me ~~~~
        \draw[lightgray!40!red, dotted] (0,0) circle(\i);

    
    \foreach \i in {0,90,...,3}
        \draw[lightgray!20!blue, dotted] (0,0) -- (\i:7.2)
            node[shape=circle,scale=0.7,pos=0.83,very thick,black,fill= white]{\i};
        
  \begin{scope}[black, very thick, cap=round, rounded corners=1pt]
    
    % ARCS
    
    %--- Inner arc EH ---%
    \draw[loosely dotted]  (180:2) arc(180:270:2);
        
    %--- The full circle ---%
    \draw  (0:3) arc(0:360:3);
    
    %--- Arcs w/ rad = 4 ---%
    \foreach \v/\w in {90/60, 330/360, 240/270, 150/180}
        \draw  ( \v:4) arc( \v: \w:4);
    
    %--- Arcs w/ rad = 5 ---%
    \foreach \v/\w in {60/30, 300/330, 210/240, 120/150}
        \draw  ( \v:5) arc( \v: \w:5);
    
    %--- Arcs w/ rad = 6 ---%
    \foreach \v/\w in {30/0, 270/300, 180/210, 90/120}
        \draw  ( \v:6) arc( \v: \w:6);
    
    %--- Outer arc LH ---%
    \draw[loosely dotted]  (90:7) arc(90:180:7);
    
    
    % LINES
    \foreach \w in {0,30,90,120,90,120,180,210,270,300}
        \draw (\w:3) -- (\w:6);
    
    \foreach \w in {60,150,240,330}
        \draw (\w:3) -- (\w:5);
    
    \foreach \w in {180,210,240,270}
        \draw [loosely dotted] (\w:2) -- (\w:3);

    \foreach \w in {30,180,120}
        \draw [loosely dotted] (\w:6) -- (\w:7);

    \draw[loosely dotted]  (150:5) -- (150:7);
  \end{scope}
\end{tikzpicture}
\end{document}

相关内容