我想在 LaTeX 中制作这些圆圈。
我们如何在其中添加文字?大文字的颜色是什么?
答案1
您已标记tikz-pgf,所以就这样。
该shadings
库用于对环进行着色,使其与您的图像相似。这even odd rule
使得可以使用另一个库circle
来不填充内部部分。
由于两个圆形路径使用不同的线条选项(一个是蓝色,另一个是黑色),我们不能使用相同的选项\path
(由 隐式调用\shade
),而是使用两个单独的\draw
命令。出于可维护性原因,路径被保存为insert path
样式,以便可以再次使用它而无需重复所有值。
该decorations.text
库用于沿arc
路径放置文本。
节点放置在外圈上
\node[dot] at (30:2.5cm and 1.75cm) {};
遗憾的是,无法在circle
路径上放置节点。甚至不存在计时器。(我认为,最近的 CVS 版本的 PGF 允许它沿路径放置节点arc
。)
代码
\documentclass[tikz]{standalone}
\usetikzlibrary{decorations.text,shadings}
\tikzset{
saveuse path/.code 2 args={
\pgfkeysalso{#1/.estyle={insert path={#2}}}%
\global\expandafter\let\csname pgfk@\pgfkeyscurrentpath/.@cmd\expandafter\endcsname % not optimal as it is now global through out the document
\csname pgfk@\pgfkeyscurrentpath/.@cmd\endcsname
\pgfkeysalso{#1}%
}
}
\begin{document}
\begin{tikzpicture}[even odd rule,dot/.style={shape=circle,fill=green,draw}]
\shade[top color=white, bottom color=blue!40] [saveuse path={big circle} {(0,0) circle [x radius=2.5cm, y radius=1.75cm]}]
[saveuse path={small circle}{(0,0) circle [x radius=1.5cm, y radius=1.0cm]}];
\draw [small circle];
\draw[blue!40] [big circle];
\node[dot] at (30:2.5cm and 1.75cm) {};
\path [
decoration={
name=text along path,
text={|\bfseries\sffamily|Productivity||},
reverse path,
text align={align=center},
},
decorate
] (60:2.0cm and 1.4cm) arc [x radius=2.0cm, y radius=1.0cm, start angle=60, end angle=120];
\path [
decoration={
name=text along path,
text={Efficiency},
text align={align=center},
},
decorate
] (-140:1.3cm and .8cm) arc [x radius=1.3cm, y radius=0.5cm, start angle=-140, end angle=-40];
\end{tikzpicture}
\end{document}