使用 pgf-pie 在标签中开始新行

使用 pgf-pie 在标签中开始新行

我在用着pgf-pie。这不是一个标准包。我在 google code 上找到的。顾名思义,它是用来创建饼图的。

\begin{figure}[htp]
\centering
    \begin{tikzpicture}[scale=0.9]
        \pie[text=pin,style=drop shadow,rotate=240,
             explode=0.2,
             color={blue!70,cyan!70,red!70,orange!50}]{65/Amplificatori di potenza, 10/Elaborazione del segnale, 17.5/Sistemi di raffreddamento, 7.5/Alimentazione}
    \end{tikzpicture}
\end{figure}

我想在标签中开始一个新行。在 latex 中,命令是,\\但它不起作用。有什么想法吗?

答案1

除非设置了或,否则宏\\根本无法在 TikZ 节点中正常工作。text widthalign

正如你指定的文本实际上text=pin你需要使用

/tikz/every pin/.style={align=center},

必须将树添加到前面的原因/tikz/是, 的第一个(可选)参数\pie被转发到\pgfkeys而不是\tikzset

代码

\documentclass[tikz]{standalone}
\usepackage{pgf-pie}
\begin{document}
\begin{tikzpicture}[scale=0.9]
    \pie[
        /tikz/every pin/.style={align=center},
        text=pin,
        rotate=240,
        explode=0.2,
        color={blue!70,cyan!70,red!70,orange!50},
        ]
        {
            65/Amplificatori di\\potenza,
            10/Elaborazione\\del segnale,
          17.5/Sistemi di\\raffreddamento,
           7.5/Alimentazione
        }
    \end{tikzpicture}
\end{document}

输出

在此处输入图片描述

答案2

正如@Qrrbrbirlbel的评论所说,默认情况下,TikZ节点不能换行。在这种情况下回答据说,您必须设置节点文本的参数才能换行。\pie但是,该命令不会这样做,因此您需要为整个命令全局指定它tikzpicture

\documentclass{article}

\usepackage{tikz} 
\usepackage{pgf-pie}
\usetikzlibrary{shadows}

\begin{document}
\begin{figure}[htp]
\centering
    \begin{tikzpicture}[scale=0.9,align=center]
        \pie[text=label,style=drop shadow,rotate=240,
             explode=0.2,
             color={blue!70,cyan!70,red!70,orange!50}]{65/Amplificatori\\di potenza, 10/Elaborazione\\del segnale, 17.5/Sistemi di\\raffreddamento, 7.5/Alimentazione}
    \end{tikzpicture}
\end{figure}
\end{document}

相关内容