Chinaunix首页 | 论坛 | 博客
  • 博客访问: 44005
  • 博文数量: 12
  • 博客积分: 471
  • 博客等级: 下士
  • 技术积分: 125
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-20 10:13
文章存档

2012年(1)

2011年(1)

2010年(1)

2008年(9)

我的朋友

分类: Delphi

2012-03-09 09:46:00

    插入外部图片还是使用 TeX 代码写代码画图的问题。这很大程度上取决于图片的性质和用途。对于一些图形(比如交换图、表格中的小图),在正文中用 LaTeX 代码画肯定比用外部软件画来得自然;反过来,也有一些图形是不适合用 TeX 代码画的,比如复杂的机械零件设计。

    哪个软件更热?我想说的是,这个问题并不那么重要。跟风最热的软件并不会使工作做得更好,前面提到的所有宏包和软件都是常用的(所以不大会有换个地方用不成的问题),那么只要它高效地完成了工作,就是好的。

    选择取决于一个软件的优缺点。可能一个软件最大的优点就是:我熟悉/喜欢它。比如 PSTricks 或 TikZ 的语法,大概主要是个人喜好问题。就好像对编辑器、对程序设计语言的喜好。谁也不能改变这种喜好,Vim 和 EMacs 用户永远在打嘴仗。因此如果你喜欢哪个工具,就用吧。

    使用什么工具,还有一方面也在于图形的特点。举一些例子:
    如果要画图论图形,我们可以用 PSTricks、TikZ、MetaPost 等等各种工具;但如果并不关心每个结点的坐标而只想要迅速地把几十上百个点连起来,那么 GraphViz 中的 dot 就几乎成了唯一的选项;而如果要自动找出一个图的 Hamilton 回路然后标记出来,那就不得不考虑 MetaPost、Asymptote 这类易编程的工具了。

    如果是画有限自动机,很难找到TikZ这么方便的工具(无论是 PSTricks 还是 MetaPost 的 autometa、metaobj 都没这么方便)。

    画流程图,除了 pst-node、TikZ,或是 metaobj,我们也不可能忽略 MS Visio、Dia、Freemind 等等软件,甚至有工具可以直接从 C 程序代码生成华丽的流程图网页。

    交换图一般都用 amscd、XYpic 这种简单的宏包,PSTricks 和 TikZ 也是很好的选择,但用 MetaPost 之类的就小题大做了。

    经常需要画 3D 图的人没有谁会觉得 TikZ 是个好选择,PSTricks 也相当麻烦,而 MetaPost 或者 Asymptote 强些,但专门的数学软件往往更合适。

    如果是画 2D 函数图,那么选择就很多,PSTricks 可以通过 PostScript 语言(需要略麻烦一点的后缀表达式语法)得到,TikZ 可以直接得到(自从几年前的 1.18 版本以后就不需要 GNUplot 了)或者利用 pgfplots 宏包,MetaPost 有 graph,Asymptote 也有对应的 graph,然而 GNUplot 也非常自然并且应用广泛,但或许更多的人喜欢用 MATLAB、Mathematica 之类,或许还会有爱好者会推荐 R 语言……除去喜好问题,这些工具都有自己的优势和缺点。PSTricks 和 TikZ 可以方便地与正文交互作用;一些需要复杂计算的函数(比如计算绦枰桓龅蹋┦呛苣延?PSTricks 和 TikZ 表示的,但用其他语言就很自然;MATLAB 之类专业的数学软件有强大的数学计算功能,可以简单画出微分方程的解;等等。

    画初等平面几何教材上的图,不论 PSTricks、TikZ 发展出了怎样的宏包,MetaPost 自动解线性方程的功能看起来多么强大,其实最合适的工具通常是几何画板(Geometer's Sketchpad)、GeoGebra 或是类似的软件。
……

    或许选择太多也是坏事,让人总在不断的比较中迷失或者争论。不过,如果真的是工作的话,就不要太纠缠于一些细节的比较为好。
阅读(2297) | 评论(0) | 转发(0) |
0

上一篇:Xilinx FPGA的全局时钟错误

下一篇:没有了

给主人留下些什么吧!~~