ребро от родителя [dashed] делает сами узлы пунктирными?

ребро от родителя [dashed] делает сами узлы пунктирными?

У меня есть аналогичный вопрос, заданный здесь:Как задать стиль отдельного ребра в дереве (TikZ)?

У меня есть дерево, построенное с помощью tikz. Я хочу сделать некоторые отдельные ребра пунктирными, а не сплошными. Поэтому я сделал то, что было упомянуто в теме выше, и это сработало, но странно, что ребра самих узлов, за которыми следует узел, имеющий входящее пунктирное ребро, тоже пунктирные. Почему?

Вот пример из упомянутой выше ветки, измененный на пунктирные края:

\documentclass{article}
\usepackage{tikz}
\begin{document}
    \begin{tikzpicture} [
    level 1/.style={sibling distance = 2cm, level distance = 1cm},
    level 2/.style={sibling distance = 1cm},
    level 3/.style={sibling distance = 1cm},
    every node/.style={circle, draw=black,thin, minimum size = 0.5cm},
    emph/.style={edge from parent/.style={dashed,red,very thick,draw}},
    norm/.style={edge from parent/.style={solid,black,thin,draw}}
    ]

    \begin{scope}[xshift=6cm]
    \node{} 
    child[emph] { node {}
        child[norm] { node {} }
        child[norm] { node {}
            child[emph] { node {} }
            child { node {} }
        }
    }
    child { node {}
        child { node {} }
        child { node {} }
    }
    child { node {} }
    ;
    \end{scope}
    \end{tikzpicture}

\end{document}

И вот как это выглядит: введите описание изображения здесь

решение1

Вам нужно добавить solidкevery nodes/.style

\documentclass{article}
\usepackage{tikz}
\begin{document}
    \begin{tikzpicture} [
    level 1/.style={sibling distance = 2cm, level distance = 1cm},
    level 2/.style={sibling distance = 1cm},
    level 3/.style={sibling distance = 1cm},
    every node/.style={circle,solid, draw=black,thin, minimum size = 0.5cm},
    emph/.style={edge from parent/.style={dashed,red,very thick,draw}},
    norm/.style={edge from parent/.style={solid,black,thin,draw}}
    ]

    \begin{scope}[xshift=6cm]
    \node{} 
    child[emph] { node {}
        child[norm] { node {} }
        child[norm] { node {}
            child[emph] { node {} }
            child { node {} }
        }
    }
    child { node {}
        child { node {} }
        child { node {} }
    }
    child { node {} }
    ;
    \end{scope}
    \end{tikzpicture}

\end{document}

Связанный контент