TikZ에서 노드를 색칠할 때 색상 이름이 나타나는 오류

TikZ에서 노드를 색칠할 때 색상 이름이 나타나는 오류

각 꼭지점과 각 화살표를 특정 색상으로 개별적으로 색칠할 수 있는 방향성 그래프를 그리려고 합니다. 나는 그 코드를 가지고있다주로공장:

\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\usepackage{tikz}
\usetikzlibrary{arrows}
\usetikzlibrary{arrows.meta,decorations.markings}
\begin{document}

\begin{tikzpicture}[
       decoration = {markings,mark=at position .5 with {\arrow{Stealth[length=2mm]}}},
       Bullet/.style = {circle, fill=#1,label=#1,draw=black!80, line width=0.2mm,
       inner sep=2.4pt, node contents={},},
every edge/.style = {draw, postaction=decorate}
                        ]
%
\node (a) at (0,2) [Bullet=red, label=below left:$a$];
\node (b) at (2,4) [Bullet=MidnightBlue, label=above:$b$];
%
\path  
(a) edge [Plum] (b) ;
\end{tikzpicture}
\end{document}

문제는 Overleaf를 사용하여 컴파일할 때 노드 위에 노드(정점)의 색상 이름을 인쇄하는 것을 제외하고는 내가 원하는 거의 모든 것을 생성한다는 것입니다.

영상

내가 뭘 잘못하고 있어서 이런 결과가 나오는 걸까? 색상 이름을 어떻게 제거할 수 있나요? 읽어 주셔서 감사합니다!


장식 설정에 대한 설명을 위해 가장자리의 중앙에 화살촉이 있기를 원하며(이미지와 같이) 노드(정점)에 검은색 윤곽선도 필요합니다. 이것이 제가 이 섹션에서 작성하려고 한 것입니다. 잘.

답변1

@SandyG가 이미 댓글에서 말했듯이, Bullet/.style한 번 as fill=#1와 두 번째 as 에서 색상 이름을 두 번 사용하고 있습니다 label=#1. fill=#1채우기 색상을 설정합니다 . label=#1색상 이름을 라벨로 출력합니다 . 따라서 을 제거하면 label=#1문제가 해결됩니다.

\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\usepackage{tikz}
\usetikzlibrary{arrows}
\usetikzlibrary{arrows.meta,decorations.markings}
\begin{document}

\begin{tikzpicture}[
       decoration = {markings,mark=at position .5 with {\arrow{Stealth[length=2mm]}}},
       Bullet/.style = {circle, fill=#1,draw=black!80, line width=0.2mm,
       inner sep=2.4pt, node contents={},},
every edge/.style = {draw, postaction=decorate}
                        ]
%
\node (a) at (0,2) [Bullet=red, label=below left:$a$];
\node (b) at (2,4) [Bullet=MidnightBlue, label=above:$b$];
%
\path  
(a) edge [Plum] (b) ;
\end{tikzpicture}
\end{document}

여기에 이미지 설명을 입력하세요

관련 정보