如何将字母 B 和 M 放置在大圆圈内?

如何将字母 B 和 M 放置在大圆圈内?

enter image description here

    \documentclass[tikz]{standalone}
\usepackage{pgfplots}
\usetikzlibrary{svg.path}

\begin{document}
    % les couleurs
    \definecolor{col1}{HTML}{53350A} %Color del tallo
    \definecolor{col2}{HTML}{F68712}
    \definecolor{col3}{HTML}{00A650}
    \definecolor{col4}{HTML}{ea0b29}
    \definecolor{col5}{HTML}{66C430}
    \definecolor{col6}{HTML}{00A650}
    \definecolor{col7}{HTML}{F68712}
    \definecolor{col8}{HTML}{EC086D}
    \definecolor{col9}{HTML}{ea0b29}
    \definecolor{col10}{HTML}{35B6ED}
    \definecolor{col11}{HTML}{EC086D}
    \definecolor{col12}{HTML}{00A650}
    \begin{tikzpicture}
        \draw[color=gray] (0,0) circle (2.7cm) node (principal) {% le logo
            \begin{tikzpicture}[scale={1mm/1pt}]
            \fill[col1] svg {M 146.14 73.32 c -3.82 -2.19 -8.01 -3.31 -12.31 -3.65 c 1.04 0.6 2.55 1.67 3.67 3.08 c 1.11 0.39 4.08 1.34 6.2 3.86 l -0.25 0.21 c -1.81 -2.14 -4.26 -3.12 -5.59 -3.59 c 0.44 0.64 0.79 1.34 0.97 2.08 l -0.33 0.08 c -0.2 -0.84 -0.64 -1.64 -1.2 -2.35 c -1.36 -1.73 -3.39 -3 -4.28 -3.42 c -2.36 -0.13 -4.75 -0.03 -7.12 0.26 c 0.2 0.8 0.78 2.27 2.61 3.73 c 2.4 1.91 6.96 3.79 15.64 4.05 l -0.01 0.34 c -2.63 -0.08 -4.89 -0.31 -6.83 -0.64 c 0 0.37 -0.03 0.68 -0.05 0.83 c -0.04 0.26 -0.24 1.17 0.58 2.55 c 0.32 0.53 0.64 0.88 0.63 0.87 l -0.24 0.23 c -0.01 -0.01 -1 -1.08 -1.29 -2.4 c -0.66 1.9 -2.26 3.75 -5.08 4.35 l -0.07 -0.33 c 4.37 -0.93 5.25 -4.67 5.17 -6.17 c -4.29 -0.78 -6.98 -2.08 -8.67 -3.42 c -0.22 -0.17 -0.42 -0.35 -0.6 -0.52 c 0.4 0.89 0.81 2.13 0.81 3.63 c 0 1.28 -0.3 2.75 -1.15 4.37 l -0.3 -0.16 c 0.83 -1.57 1.11 -2.98 1.12 -4.21 c 0 -2.09 -0.83 -3.64 -1.26 -4.46 h 0 c -0.86 -1.05 -1.21 -2.01 -1.35 -2.6 c -1.6 0.21 -3.2 0.49 -4.77 0.85 c -0.19 0.47 -0.4 0.94 -0.64 1.4 c 0.31 4.12 1.08 10.07 6.64 13.81 l -0.18 0.28 c -5.46 -3.68 -6.41 -9.43 -6.75 -13.54 c -0.45 0.79 -0.96 1.54 -1.58 2.23 c -0.37 0.41 -0.76 0.83 -1.18 1.25 c -0.06 0.36 -0.11 0.81 -0.11 1.32 c 0 1.16 0.24 2.66 1.1 4.32 c 1.19 2.3 3.04 5.65 3.05 7.9 c 0 0.42 -0.07 0.81 -0.22 1.15 l -0.3 -0.14 c 0.13 -0.28 0.19 -0.62 0.19 -1.01 c 0 -0.76 -0.24 -1.68 -0.6 -2.66 v 0.12 c 0.01 1.85 -0.99 2.76 -2.02 3.46 c -1.04 0.71 -2.08 1.29 -2.42 2.39 c -0.9 2.94 -2.35 3.8 -3.17 4.74 l -0.25 -0.23 c 0.86 -0.92 2.32 -1.95 3.11 -4.64 c 0.36 -1.22 1.45 -1.79 2.54 -2.53 c 1.01 -0.7 1.87 -1.48 1.87 -3.19 c 0 -0.34 -0.04 -0.72 -0.14 -1.3 c -0.6 -1.37 -1.34 -2.77 -1.93 -3.9 c -0.24 -0.47 -0.44 -0.92 -0.6 -1.37 c -0.15 1.74 -0.93 4.38 -2.46 5.88 l -0.24 -0.24 c 1.61 -1.55 2.47 -4.66 2.4 -6.65 c -0.18 -0.77 -0.25 -1.48 -0.25 -2.1 c 0 -0.35 0.02 -0.66 0.06 -0.94 c -2.87 2.75 -6.71 5.58 -9.89 8.99 c -0.29 0.81 -0.83 2.41 -0.83 4.34 c 0 2.52 0.9 5.57 4.47 8.13 l -0.2 0.28 c -3.66 -2.62 -4.62 -5.81 -4.61 -8.41 c 0 -1.5 0.32 -2.81 0.6 -3.71 c -2 2.25 -3.67 4.77 -4.57 7.67 l -0.49 -0.15 c 1.8 -5.75 6.45 -9.95 10.72 -13.6 c -1.38 0.4 -4.33 1.33 -6.14 1.1 c -0.89 -0.12 -2.15 -0.33 -3.32 -0.33 c -1.01 0 -1.95 0.15 -2.53 0.59 l -0.2 -0.27 c 0.69 -0.51 1.69 -0.66 2.73 -0.66 c 1.21 0 2.38 0.2 3.37 0.34 c 1.87 0.25 5.49 -0.97 6.7 -1.28 c 2.05 -1.75 3.97 -3.37 5.38 -4.99 c 0.97 -1.1 1.71 -2.38 2.29 -3.71 c -10.41 2.5 -19.7 7.99 -23.78 12.22 c 0.62 -2.6 11.25 -10.16 24.14 -13.15 c 1.65 -4.55 1.49 -9.49 1.56 -10.6 l 0.51 0.03 c -0.08 1.04 0.1 5.85 -1.49 10.44 c 1.43 -0.31 2.88 -0.57 4.35 -0.75 c -0.47 -0.91 -1.94 -4.08 -1.93 -8.09 c 0.08 1.25 1.13 6.08 3.73 7.89 c 6.37 -0.55 12.96 0.31 18.91 3.59 l -0.06 0.83 z};
            \fill[col2] svg {M 102.92 92.63 c 0.07 -1.05 -0.71 -1.96 -1.77 -2.03 c -1.05 -0.07 -1.96 0.71 -2.03 1.76 c -0.08 1.05 0.71 1.96 1.76 2.03 c 1.05 0.07 1.96 -0.71 2.04 -1.76};
            \fill[col3] svg {M 103.12 82.98 c 0.09 -1.26 -0.86 -2.35 -2.11 -2.44 c -1.26 -0.09 -2.35 0.86 -2.44 2.12 c -0.09 1.26 0.86 2.35 2.11 2.44 c 1.26 0.09 2.35 -0.86 2.44 -2.12};
            \fill[col4] svg {M 112.19 96.58 c 0.09 -1.26 -0.86 -2.35 -2.11 -2.44 c -1.26 -0.09 -2.35 0.86 -2.44 2.11 c -0.09 1.26 0.86 2.35 2.12 2.44 c 1.26 0.09 2.35 -0.86 2.43 -2.11};
            \fill[col5] svg {M 117.82 87.1 c 0.17 -2.36 -1.61 -4.4 -3.97 -4.57 c -2.36 -0.17 -4.4 1.61 -4.57 3.96 c -0.17 2.36 1.61 4.4 3.97 4.57 c 2.36 0.17 4.4 -1.61 4.57 -3.96};
            %No conectado
            %\fill[col6] svg {M 136.13 73.84 c 0.07 -1.05 -0.71 -1.96 -1.76 -2.04 c -1.05 -0.07 -1.96 0.71 -2.03 1.77 c -0.07 1.05 0.71 1.96 1.76 2.03 c 1.05 0.08 1.96 -0.71 2.03 -1.76};
            \fill[col7] svg {M 140.04 75.45 c 0.05 -0.76 -0.52 -1.41 -1.28 -1.47 c -0.76 -0.05 -1.42 0.52 -1.46 1.28 c -0.06 0.76 0.52 1.41 1.27 1.46 c 0.76 0.06 1.41 -0.52 1.47 -1.27};
            %No conectado
            %\fill[col8,draw=black] svg {M 112.44 77.64 c 0.05 -0.76 -0.52 -1.41 -1.27 -1.46 c -0.76 -0.05 -1.42 0.52 -1.47 1.27 c -0.05 0.76 0.52 1.41 1.27 1.47 c 0.76 0.05 1.41 -0.52 1.47 -1.28};
            \fill[col9] svg {M 140.97 83.72 c 0.11 -1.51 -1.03 -2.82 -2.54 -2.93 c -1.51 -0.11 -2.82 1.03 -2.92 2.54 c -0.11 1.51 1.03 2.82 2.53 2.93 c 1.51 0.11 2.82 -1.03 2.93 -2.54};
            \fill[col10] svg {M 128.31 80.1 c 0.07 -1.05 -0.71 -1.96 -1.76 -2.03 c -1.05 -0.08 -1.96 0.71 -2.03 1.76 c -0.08 1.05 0.71 1.96 1.76 2.03 c 1.05 0.07 1.96 -0.71 2.03 -1.76};
            \fill[col11] svg {M 134.05 82.5 c 0.07 -1.05 -0.71 -1.96 -1.76 -2.03 c -1.05 -0.08 -1.96 0.71 -2.03 1.76 c -0.07 1.05 0.71 1.96 1.76 2.03 c 1.05 0.07 1.96 -0.71 2.03 -1.76};
            \fill[col12] svg {M 145.23 78.25 c 0.07 -1.05 -0.71 -1.96 -1.76 -2.03 c -1.05 -0.07 -1.96 0.71 -2.03 1.76 c -0.07 1.05 0.71 1.96 1.76 2.03 c 1.05 0.07 1.96 -0.71 2.03 -1.76};
            \end{tikzpicture}};
        \node (sa) [below of= principal,node distance=2.2cm] {Conocimientos};
        \node[] (c) at (2,2) {M};
        \node[] (d) at (-2,-2) {B};
    \end{tikzpicture}


\end{document}

答案1

我不知道你到底想要什么,但下面的代码显示了几个建议。

通常,最好避免嵌套tikzpictures ,就像您将 a 放在tikzpicturea 内部一样node。相反,我会使用 ascope环境作为 SVG 路径,并使用 alocal bounding box获取图表该部分(principal在代码中命名)的引用节点。

为了制作灰色圆圈,我使用该fit库制作一个名为的节点circ,该节点适合该局部边界框,但带有负数inner sep,这会减小圆圈的尺寸。

如何放置节点取决于您想要它们的位置。一种方法是将它们相对于绘制灰色圆圈的节点放置。

另一方面,如果它们应该放在斑点内,您可以使用 ,path picture就像我下面使用namepath我定义的样式所做的那样,在斑点的中心添加\coordinate。例如,使用\fill[col5,namepath=foo] svg ...,您可以稍后在代码中执行\node at (foo) {M};。我使用了一个循环作为示例。

output of code

\documentclass[tikz]{standalone} % tikz option means tikz is loaded
\usetikzlibrary{svg.path,fit}

\begin{document}
    % les couleurs
    \definecolor{col1}{HTML}{53350A} %Color del tallo
    \definecolor{col2}{HTML}{F68712}
    \definecolor{col3}{HTML}{00A650}
    \definecolor{col4}{HTML}{ea0b29}
    \definecolor{col5}{HTML}{66C430}
    \definecolor{col6}{HTML}{00A650}
    \definecolor{col7}{HTML}{F68712}
    \definecolor{col8}{HTML}{EC086D}
    \definecolor{col9}{HTML}{ea0b29}
    \definecolor{col10}{HTML}{35B6ED}
    \definecolor{col11}{HTML}{EC086D}
    \definecolor{col12}{HTML}{00A650}
    \begin{tikzpicture}[
        namepath/.style={
           path picture={
              \coordinate (#1) at (path picture bounding box.center);
           }
        }
    ]

            \begin{scope}[local bounding box=principal,scale={1mm/1pt}]
            \fill[col1,namepath=1] svg {M 146.14 73.32 c -3.82 -2.19 -8.01 -3.31 -12.31 -3.65 c 1.04 0.6 2.55 1.67 3.67 3.08 c 1.11 0.39 4.08 1.34 6.2 3.86 l -0.25 0.21 c -1.81 -2.14 -4.26 -3.12 -5.59 -3.59 c 0.44 0.64 0.79 1.34 0.97 2.08 l -0.33 0.08 c -0.2 -0.84 -0.64 -1.64 -1.2 -2.35 c -1.36 -1.73 -3.39 -3 -4.28 -3.42 c -2.36 -0.13 -4.75 -0.03 -7.12 0.26 c 0.2 0.8 0.78 2.27 2.61 3.73 c 2.4 1.91 6.96 3.79 15.64 4.05 l -0.01 0.34 c -2.63 -0.08 -4.89 -0.31 -6.83 -0.64 c 0 0.37 -0.03 0.68 -0.05 0.83 c -0.04 0.26 -0.24 1.17 0.58 2.55 c 0.32 0.53 0.64 0.88 0.63 0.87 l -0.24 0.23 c -0.01 -0.01 -1 -1.08 -1.29 -2.4 c -0.66 1.9 -2.26 3.75 -5.08 4.35 l -0.07 -0.33 c 4.37 -0.93 5.25 -4.67 5.17 -6.17 c -4.29 -0.78 -6.98 -2.08 -8.67 -3.42 c -0.22 -0.17 -0.42 -0.35 -0.6 -0.52 c 0.4 0.89 0.81 2.13 0.81 3.63 c 0 1.28 -0.3 2.75 -1.15 4.37 l -0.3 -0.16 c 0.83 -1.57 1.11 -2.98 1.12 -4.21 c 0 -2.09 -0.83 -3.64 -1.26 -4.46 h 0 c -0.86 -1.05 -1.21 -2.01 -1.35 -2.6 c -1.6 0.21 -3.2 0.49 -4.77 0.85 c -0.19 0.47 -0.4 0.94 -0.64 1.4 c 0.31 4.12 1.08 10.07 6.64 13.81 l -0.18 0.28 c -5.46 -3.68 -6.41 -9.43 -6.75 -13.54 c -0.45 0.79 -0.96 1.54 -1.58 2.23 c -0.37 0.41 -0.76 0.83 -1.18 1.25 c -0.06 0.36 -0.11 0.81 -0.11 1.32 c 0 1.16 0.24 2.66 1.1 4.32 c 1.19 2.3 3.04 5.65 3.05 7.9 c 0 0.42 -0.07 0.81 -0.22 1.15 l -0.3 -0.14 c 0.13 -0.28 0.19 -0.62 0.19 -1.01 c 0 -0.76 -0.24 -1.68 -0.6 -2.66 v 0.12 c 0.01 1.85 -0.99 2.76 -2.02 3.46 c -1.04 0.71 -2.08 1.29 -2.42 2.39 c -0.9 2.94 -2.35 3.8 -3.17 4.74 l -0.25 -0.23 c 0.86 -0.92 2.32 -1.95 3.11 -4.64 c 0.36 -1.22 1.45 -1.79 2.54 -2.53 c 1.01 -0.7 1.87 -1.48 1.87 -3.19 c 0 -0.34 -0.04 -0.72 -0.14 -1.3 c -0.6 -1.37 -1.34 -2.77 -1.93 -3.9 c -0.24 -0.47 -0.44 -0.92 -0.6 -1.37 c -0.15 1.74 -0.93 4.38 -2.46 5.88 l -0.24 -0.24 c 1.61 -1.55 2.47 -4.66 2.4 -6.65 c -0.18 -0.77 -0.25 -1.48 -0.25 -2.1 c 0 -0.35 0.02 -0.66 0.06 -0.94 c -2.87 2.75 -6.71 5.58 -9.89 8.99 c -0.29 0.81 -0.83 2.41 -0.83 4.34 c 0 2.52 0.9 5.57 4.47 8.13 l -0.2 0.28 c -3.66 -2.62 -4.62 -5.81 -4.61 -8.41 c 0 -1.5 0.32 -2.81 0.6 -3.71 c -2 2.25 -3.67 4.77 -4.57 7.67 l -0.49 -0.15 c 1.8 -5.75 6.45 -9.95 10.72 -13.6 c -1.38 0.4 -4.33 1.33 -6.14 1.1 c -0.89 -0.12 -2.15 -0.33 -3.32 -0.33 c -1.01 0 -1.95 0.15 -2.53 0.59 l -0.2 -0.27 c 0.69 -0.51 1.69 -0.66 2.73 -0.66 c 1.21 0 2.38 0.2 3.37 0.34 c 1.87 0.25 5.49 -0.97 6.7 -1.28 c 2.05 -1.75 3.97 -3.37 5.38 -4.99 c 0.97 -1.1 1.71 -2.38 2.29 -3.71 c -10.41 2.5 -19.7 7.99 -23.78 12.22 c 0.62 -2.6 11.25 -10.16 24.14 -13.15 c 1.65 -4.55 1.49 -9.49 1.56 -10.6 l 0.51 0.03 c -0.08 1.04 0.1 5.85 -1.49 10.44 c 1.43 -0.31 2.88 -0.57 4.35 -0.75 c -0.47 -0.91 -1.94 -4.08 -1.93 -8.09 c 0.08 1.25 1.13 6.08 3.73 7.89 c 6.37 -0.55 12.96 0.31 18.91 3.59 l -0.06 0.83 z};
            \fill[col2,namepath=2] svg {M 102.92 92.63 c 0.07 -1.05 -0.71 -1.96 -1.77 -2.03 c -1.05 -0.07 -1.96 0.71 -2.03 1.76 c -0.08 1.05 0.71 1.96 1.76 2.03 c 1.05 0.07 1.96 -0.71 2.04 -1.76};
            \fill[col3,namepath=3] svg {M 103.12 82.98 c 0.09 -1.26 -0.86 -2.35 -2.11 -2.44 c -1.26 -0.09 -2.35 0.86 -2.44 2.12 c -0.09 1.26 0.86 2.35 2.11 2.44 c 1.26 0.09 2.35 -0.86 2.44 -2.12};
            \fill[col4,namepath=4] svg {M 112.19 96.58 c 0.09 -1.26 -0.86 -2.35 -2.11 -2.44 c -1.26 -0.09 -2.35 0.86 -2.44 2.11 c -0.09 1.26 0.86 2.35 2.12 2.44 c 1.26 0.09 2.35 -0.86 2.43 -2.11};
            \fill[col5,namepath=5] svg {M 117.82 87.1 c 0.17 -2.36 -1.61 -4.4 -3.97 -4.57 c -2.36 -0.17 -4.4 1.61 -4.57 3.96 c -0.17 2.36 1.61 4.4 3.97 4.57 c 2.36 0.17 4.4 -1.61 4.57 -3.96};
            %No conectado
            %\fill[col6] svg {M 136.13 73.84 c 0.07 -1.05 -0.71 -1.96 -1.76 -2.04 c -1.05 -0.07 -1.96 0.71 -2.03 1.77 c -0.07 1.05 0.71 1.96 1.76 2.03 c 1.05 0.08 1.96 -0.71 2.03 -1.76};
            \fill[col7,namepath=7] svg {M 140.04 75.45 c 0.05 -0.76 -0.52 -1.41 -1.28 -1.47 c -0.76 -0.05 -1.42 0.52 -1.46 1.28 c -0.06 0.76 0.52 1.41 1.27 1.46 c 0.76 0.06 1.41 -0.52 1.47 -1.27};
            %No conectado
            %\fill[col8,draw=black] svg {M 112.44 77.64 c 0.05 -0.76 -0.52 -1.41 -1.27 -1.46 c -0.76 -0.05 -1.42 0.52 -1.47 1.27 c -0.05 0.76 0.52 1.41 1.27 1.47 c 0.76 0.05 1.41 -0.52 1.47 -1.28};
            \fill[col9,namepath=9] svg {M 140.97 83.72 c 0.11 -1.51 -1.03 -2.82 -2.54 -2.93 c -1.51 -0.11 -2.82 1.03 -2.92 2.54 c -0.11 1.51 1.03 2.82 2.53 2.93 c 1.51 0.11 2.82 -1.03 2.93 -2.54};
            \fill[col10,namepath=10] svg {M 128.31 80.1 c 0.07 -1.05 -0.71 -1.96 -1.76 -2.03 c -1.05 -0.08 -1.96 0.71 -2.03 1.76 c -0.08 1.05 0.71 1.96 1.76 2.03 c 1.05 0.07 1.96 -0.71 2.03 -1.76};
            \fill[col11,namepath=11] svg {M 134.05 82.5 c 0.07 -1.05 -0.71 -1.96 -1.76 -2.03 c -1.05 -0.08 -1.96 0.71 -2.03 1.76 c -0.07 1.05 0.71 1.96 1.76 2.03 c 1.05 0.07 1.96 -0.71 2.03 -1.76};
            \fill[col12,namepath=12] svg {M 145.23 78.25 c 0.07 -1.05 -0.71 -1.96 -1.76 -2.03 c -1.05 -0.07 -1.96 0.71 -2.03 1.76 c -0.07 1.05 0.71 1.96 1.76 2.03 c 1.05 0.07 1.96 -0.71 2.03 -1.76};
            \end{scope}
        \node [gray,circle,draw,fit=(principal),inner sep=-10pt] (circ) {};
        \node (sa) [below of= principal,node distance=2.2cm] {Conocimientos};
        \node[below left] (c) at (circ.north east) {M};
        \node[right] (d) at (circ.200) {B};

       \foreach \x in {1,2,3,4,5,7,9,10,11,12}
          \node at (\x) {\x};
    \end{tikzpicture}
\end{document}

相关内容