我已经在 LaTeX 中绘制了极坐标饼图。
以下是代码:
\begin{document}
\begin {tikzpicture}[thick]
\tikzstyle{every node}=[font=\LARGE]
\pie[polar, text=inside]{10.5/A, 20.8/B, 30.2/C, 40.4/D}
\end{tikzpicture}
\end{document}
我想添加小数值而不是整数。例如
10.45、20.78、30.67、40.10。
我怎样才能做到这一点?
答案1
似乎使用polar
参数时不能使用浮点数(只能使用整数)。在我看来,这看起来像是软件包错误。以下是补丁pgf-pie.sty
(左侧是新代码,右侧是旧代码 - 我只显示了部分pgf-pie.sty
):
%%%%%%%%%% CIRCLE PIE BGEIN %%%%%%%%%%% %%%%%%%%%% CIRCLE PIE BGEIN %%%%%%%%%%%
\ifpolar \ifpolar
\xdef\maxValue{0} \xdef\maxValue{0}
\newdimen \@temp
\foreach \p/\e in {#2} { \foreach \p/\e in {#2} {
\@temp=\maxValue pt
\ifdim \p pt > \@temp \ifnum \maxValue < \p
\xdef\maxValue{\p} \xdef\maxValue{\p}
\fi \fi
} }
pgf-pie.sty
或者从命令中复制代码\pie
(257 行代码)并更改相关部分。
以下是经过更改后的工作 MWE pgf-pie.sty
:
\documentclass{standalone}
\usepackage{pgf-pie}
\begin{document}
\begin {tikzpicture}[thick]
\tikzstyle{every node}=[font=\LARGE]
\pie[polar,sum=auto,text=inside,after number={}]{10.45/A, 20.78/B, 30.67/C, 40.10/D}
\end{tikzpicture}
\end{document}