改了一个 latex 饼图

OOo,TeX,KO,ABI,GIMP,Picasa,ProE,QCAD,Inkscape,Kicad,Eagle
回复
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

改了一个 latex 饼图

#1

帖子 eexpress » 2012-02-06 16:19

加了颜色定义。
附件
screenshot1.png
screenshot1.png (20.4 KiB) 查看 3881 次
pie.tar
(30 KiB) 已下载 191 次
● 鸣学
头像
adam8157
帖子: 2794
注册时间: 2009-03-05 16:31
联系:

Re: 改了一个 latex 饼图

#2

帖子 adam8157 » 2012-02-06 16:44

闷*的神
头像
shinery
帖子: 1378
注册时间: 2009-07-22 22:23

Re: 改了一个 latex 饼图

#4

帖子 shinery » 2012-02-06 17:04

不错,神就是神。
愿扣上你双手,至繁华浪处到沙丘。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 改了一个 latex 饼图

#5

帖子 eexpress » 2012-02-06 20:21

改成独立文件了。只要\input{pie.tex}就可以了。

代码: 全选

\usepackage{tikz}
%--------------------------------------------------
\newcommand{\pie}[1]{
\begin{tikzpicture}[scale=3]
\newcounter{Cnta} \newcounter{Cntb}
\foreach \p/\t/\c in {#1}{
  \setcounter{Cnta}{\value{Cntb}}
  \addtocounter{Cntb}{\p}
  \pgfmathparse{\theCnta/100*360} \let\Astart\pgfmathresult
  \pgfmathparse{\theCntb/100*360} \let\Aend\pgfmathresult
%  \let\Astart\theCnta/100*360
%  \let\Aend\theCntb/100*360
  \pgfmathparse{0.5*\Astart+0.5*\Aend} \let\midangle\pgfmathresult
  % slice
  \draw[thick,draw=white,fill=\c!70] (0,0) -- (\Astart:1) arc (\Astart:\Aend:1) -- cycle;
  % outer label
  \node[label=\midangle:\textcolor{\c}{\t}] at (\midangle:1) {};
  % inner label
  \pgfmathparse{min((\Aend-\Astart-10)/110*(-0.3),0)}
  \let\temp\pgfmathresult
  \pgfmathparse{max(\temp,-0.5) + 0.8}
  \let\innerpos\pgfmathresult
  \node at (\midangle:\innerpos) {\textcolor{white}{\p\%}};
}
\end{tikzpicture}
}
%--------------------------------------------------
%\pie{20/类型 A/black, 4/苹果 B/green, 11/type C/red, 49/type D/blue, 16/other/orange}
● 鸣学
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 改了一个 latex 饼图

#6

帖子 eexpress » 2012-02-06 22:07

tikz的style,终于摸索清楚了。可以一直继承的。很方便。

有一个现成的sty。polar有问题。其他还好,就是样式定义没那么自由了。
http://code.google.com/p/pgf-pie/downlo ... p&can=2&q=
● 鸣学
头像
月下叹逍遥
论坛版主
帖子: 33994
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
联系:

Re: 改了一个 latex 饼图

#7

帖子 月下叹逍遥 » 2012-02-06 22:10

EE元宵节快乐。。。
浮生七十今三十,从此凄惶未可知
moximoxi
帖子: 1967
注册时间: 2008-09-30 17:46

Re: 改了一个 latex 饼图

#8

帖子 moximoxi » 2012-02-06 22:18

月下叹逍遥 写了:EE元宵节快乐。。。
头像
eagle5678
帖子: 1900
注册时间: 2006-07-08 14:07

Re: 改了一个 latex 饼图

#9

帖子 eagle5678 » 2012-02-06 23:44

moximoxi 写了:
月下叹逍遥 写了:EE元宵节快乐。。。
头像
leni
帖子: 1989
注册时间: 2008-09-28 17:24

Re: 改了一个 latex 饼图

#10

帖子 leni » 2012-02-07 5:35

eexpress 写了:tikz的style,终于摸索清楚了。可以一直继承的。很方便。

有一个现成的sty。polar有问题。其他还好,就是样式定义没那么自由了。
http://code.google.com/p/pgf-pie/downlo ... p&can=2&q=
什么叫做“tikz的style可以一直继承”?
latex 是个命令集,不是软件,所以在应用程序里找不到,也不存在启动。使用的话,自己写个 .tex 的文件,用 latex 编译。viewtopic.php?f=35&t=331555 的 4楼 有入门教程PDF下载。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 改了一个 latex 饼图

#11

帖子 eexpress » 2012-02-07 16:30

flowchartbase/.style={draw, top color=white, thick, inner sep=.5em, minimum size=1.5em},
cloud/.style = {flowchartbase,ellipse,bottom color=yellow!50},
block/.style = {flowchartbase,rectangle, rounded corners, bottom color=darkgreen!50},
decision/.style = {flowchartbase,diamond, fill=blue!20},

这样继承,就不需要使用every node/.style,否则会影响其他定义。
● 鸣学
头像
tangboyun
帖子: 701
注册时间: 2009-07-25 1:57
联系:

Re: 改了一个 latex 饼图

#12

帖子 tangboyun » 2012-02-07 22:10

效果很不错啊,收藏了。
https://github.com/tangboyun
http://tangboyun.is-programmer.com/
提问的智慧————Eric Steven Raymond
回答的智慧————Andrew Clarke
吾尝终日而思矣,不如须臾之所学也;吾尝跂而望矣,不如登高之博见也。
急急急标题什么的,最讨厌了!
急急复急急,急急何其多,我生待急急,万事急急急。
头像
bearscafe
帖子: 694
注册时间: 2007-05-05 23:11

Re: 改了一个 latex 饼图

#13

帖子 bearscafe » 2012-07-29 15:46

eexpress 写了:改成独立文件了。只要\input{pie.tex}就可以了。
真不错。 :em11

不过写paper有时需要用到纯黑白版本的,改了一个黑白的:

代码: 全选

\usepackage{tikz}
%--------------------------------------------------
\newcommand{\pie}[1]{
\begin{tikzpicture}[scale=3]
\newcounter{Cnta} \newcounter{Cntb}
\foreach \p/\t/\c in {#1}{
  \setcounter{Cnta}{\value{Cntb}}
  \addtocounter{Cntb}{\p}
  \pgfmathparse{\theCnta/100*360} \let\Astart\pgfmathresult
  \pgfmathparse{\theCntb/100*360} \let\Aend\pgfmathresult
%  \let\Astart\theCnta/100*360
%  \let\Aend\theCntb/100*360
  \pgfmathparse{0.5*\Astart+0.5*\Aend} \let\midangle\pgfmathresult
  % slice
  \draw[thick,draw=black,fill=\c!70] (0,0) -- (\Astart:1) arc (\Astart:\Aend:1) -- cycle;
  % outer label
  \node[label=\midangle:\textcolor{black}{\t}] at (\midangle:1) {};
  % inner label
  \pgfmathparse{min((\Aend-\Astart-10)/110*(-0.3),0)}
  \let\temp\pgfmathresult
  \pgfmathparse{max(\temp,-0.5) + 0.8}
  \let\innerpos\pgfmathresult
  \node at (\midangle:\innerpos) {\textcolor{black}{\p\%}};
}
\end{tikzpicture}
}
%--------------------------------------------------
%\pie{20/Type A/white, 4/Apple B/white, 11/type C/white, 49/type D/white, 16/other/white}
附件
pie.png
头像
tangboyun
帖子: 701
注册时间: 2009-07-25 1:57
联系:

Re: 改了一个 latex 饼图

#14

帖子 tangboyun » 2013-05-06 14:03

今天看到一个相关的Pie图,cool到不行,正好放在这里

http://tex.stackexchange.com/questions/ ... h-pgf-plot

图片

核心提示,凡是用到阴影地,毋要用xelatex编译,只能用pdflatex。各位可以对比看看用xelatex啥效果。。。。。。。

另:document class用standalone即可。
https://github.com/tangboyun
http://tangboyun.is-programmer.com/
提问的智慧————Eric Steven Raymond
回答的智慧————Andrew Clarke
吾尝终日而思矣,不如须臾之所学也;吾尝跂而望矣,不如登高之博见也。
急急急标题什么的,最讨厌了!
急急复急急,急急何其多,我生待急急,万事急急急。
回复