极坐标饼图中的十进制值

极坐标饼图中的十进制值

我已经在 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}

相关内容