![为什么对于同一个命令,红色节点较大,而蓝色节点较小](https://linux22.com/image/456149/%E4%B8%BA%E4%BB%80%E4%B9%88%E5%AF%B9%E4%BA%8E%E5%90%8C%E4%B8%80%E4%B8%AA%E5%91%BD%E4%BB%A4%EF%BC%8C%E7%BA%A2%E8%89%B2%E8%8A%82%E7%82%B9%E8%BE%83%E5%A4%A7%EF%BC%8C%E8%80%8C%E8%93%9D%E8%89%B2%E8%8A%82%E7%82%B9%E8%BE%83%E5%B0%8F.png)
这是我们的Tex代码,不知道为什么下面蓝色的比较小,另外想问一下,如何改变节点中文字的粗细:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
\node[circle,draw,fill=red!50, inner sep=0pt ] (a) at (0,0){+};
\node[circle,draw,fill=blue!50, inner sep=0pt ] (b) at (1,0){-};
\end{tikzpicture}
\end{document}
答案1
问题是,-
在文本模式下,不会呈现“减号”,而是呈现连字符(除法、连字符)。连字符与+
在数学模式和文本模式下呈现的加号不兼容。当您想要打印减号时,切勿打印连字符。即始终将其置于-
数学模式中:$-$
。试试这个:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
\node[circle,draw,fill=red!50, inner sep=0pt ] (a) at (0,0){+};
\node[circle,draw,fill=blue!50, inner sep=0pt ] (b) at (1,0){$-$};
\end{tikzpicture}
\end{document}
答案2
问题是+
和-
字符的大小不同。如果您希望节点具有相同的大小,则需要设置(足够大的)最小大小。在这种情况下3.5mm
似乎有效:
我还建议TikZ
为你的节点定义一个样式,这样你就不需要输入两次规范了。这样做你的代码就变成了:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\tikzset{
mynode/.style = {
circle,
draw,
fill=red!50,
inner sep=0pt,
minimum size=3.5mm,
}
}
\begin{document}
\begin{tikzpicture}
\node[mynode] (a) at (0,0){+};
\node[mynode] (b) at (1,0){-};
\end{tikzpicture}
\end{document}