![如何防止饼图中的标签重叠?](https://linux22.com/image/447153/%E5%A6%82%E4%BD%95%E9%98%B2%E6%AD%A2%E9%A5%BC%E5%9B%BE%E4%B8%AD%E7%9A%84%E6%A0%87%E7%AD%BE%E9%87%8D%E5%8F%A0%EF%BC%9F.png)
我想知道如何防止饼图的标签重叠并更好地控制它们的位置?
我正在使用pgf-pie
软件包,但我不知道是否可以轻松修改软件包以实现这一点。如果不行,我也对不pgf-pie
使用 和 的更“手动”的解决方案感兴趣tikz
。
\documentclass{article}
\usepackage{pgf-pie}
\begin{document}
\begin{tikzpicture}
\pie[rotate=90, text=pin, hide number, sum=auto]{
1000/{\pgfmathprintnumber{1000.0}},
300/{\pgfmathprintnumber{300}},
250/{\pgfmathprintnumber{250}},
100/{\pgfmathprintnumber{100}},
31.1/{\pgfmathprintnumber{31.1}},
25.5/{\pgfmathprintnumber{25.5}},
21.2/{\pgfmathprintnumber{21.2}}
};
\end{tikzpicture}
\end{document}
答案1
以下答案使用轮图包,是我写的。
数据的锚点由 key 决定anchor xsep
。
行的长度由键 决定lines
。对于第四和第六个切片,此长度由键 单独定义lines{4,6}
。
在密钥中slices style
我们使用\WClistcolors
引用给定密钥的列表中的项目WClistcolors
。
\documentclass[border=6pt]{standalone}
\usepackage{wheelchart}
\begin{document}
\begin{tikzpicture}
\wheelchart[
anchor xsep=30,
counterclockwise,
data=\pgfmathprintnumber{\WCvarA},
lines=0.5,
lines{4,6}=1.3,
pie,
slices style={
\WClistcolors,
draw=black,
line join=bevel
},
WClistcolors={blue!60,cyan!60,yellow!60,orange!60,red!60,blue!60!cyan!60,cyan!60!yellow!60,red!60!cyan!60,red!60!blue!60,orange!60!cyan!60}
]{1000,300,250,100,31.1,25.5,21.2}
\end{tikzpicture}
\end{document}