Latex--TikZ和PGF--高级文本绘图,思维绘图,想到--得到!
Latex--TikZ和PGF--高级文本绘图,思维绘图,想到--得到!
TikZ和PGF是一种用在TeX上的CLI绘图工具。CLI和GUI是两种常见的绘图方式,前者是所想即所得(WYTIWYG)的,通过类编程的思想实现绘图,这种方式往往能够生成精确控制的函数图,常见的有PostScript、PGF、Asymptote、PSTricks等。后者则是所见即所得(WYSIWYG)的,常见的有CorelDraw、Illustrator、Photoshop、GIMP、Office、Visio等。 TikZ和PGF的关系则是高层和底层的关系,简单说来,TikZ基于PGF,它可以帮助我们用更易于理解的方式创建复杂的图形。PGF的全名是“portable graphics format”,或者“pretty, good, functional”,TikZ的命名更有趣,采用的是递归式的取名:“TikZ ist kein Zeichenprogramm”(TikZ is not a drawing program),类似的取名最出名的恐怕就是GNU(GNU is Not Unix)了。
教程
- TikZ and pgf Manual:官方指导教程。
- Graphics with Tikz:一份简单的TikZ教程slide。
- 例学Tikz & PGF:从具体例子入手学习TikZ和PGF。
- A TikZ mini course:一份介绍TikZ的简短的slide。
- A TikZ tutorial: Generating graphics in the spirit of TeX:TUG 2009视频教程。
- Commutative Diagrams using TikZ:一份介绍如何在( )中应用TikZ绘制交换图的教程。
- Graphics in LaTeX:一份对( )常见画图工具的综述,包含了对TikZ的有用的介绍。
- Graphics with PGF and TikZ:一篇发表在PracTeX杂志上的文章,包含了许多有用的图例。还有它的演示视频。
- Including TikZ pictures:介绍如何导入外部TikZ图案的文章。
- LaTeX Figures with PGF and TikZ:一份关于使用PGF和TikZ的利弊的讨论,发表于High Energy PhDs weblog。
- Statistiker-wg.de tutorials:收集了很多PP的TikZ实例,不过是德文的。
- Trace Diagram Codes & Examples:展示如何绘制trance图。
相关论坛、博客以及邮件列表
- comp.text.tex:最大并且是最活跃的( )相关的论坛。
- LaTeX-Community.org:一个相对比较新的不过发展很迅速的( )论坛/社区。拥有很多友善并且活跃的用户,可以帮忙解决大部分( )相关的问题。
- Beamer forums on SF:Beamer和PGF都是由同个作者写的,所以Sourceforge上的Beamer论坛上也有专门讨论PGF/Tikz的版块。
- PGF and TikZ forums on Sourceforge:Sourceforge上的PGF/TikZ论坛。活跃度比较低。但如果你向PGF用户邮件列表提交问题,获取帮助的机会比较大。
- LaTeX_Fun:介绍( )技术的博客。
- The latex-beamer-users mailing list on SF:Sourceforge上的( )-Beamer用户邮件列表。在这个邮件列表中也能够找到关于PGF/TikZ的讨论。
- CTeX论坛:里面有专门的( )绘图专区版块,不过介绍的内容比较杂,还可以找到Asymptote、PostScript等的资源。
实例
- TeXample.net:PGF/TikZ的官方gallery,要检索全部实例可以访问这里。
- Graph Theory in LaTeX:收集( )下的绘图工具绘制的图案;
- Altermundus.com:介绍TikZ相关的包和绘制出来的实例。
- 简单流图(Simple flow chart)
- 工作流图(The TeX work flow)
- UML时序图(UML sequence diagrams)
- 类图(Class diagram)
- ER图(Entity-Relationship diagram)
- 系统架构图(System Combination)
- 基于数据流的系统架构图(Inertial navigation system)
- 归并树(Merge sort recursion tree)
- Prim算法(Prim’s algorithm,用于生成最小生成树)
- 神经网络(Neural network)
- 有限状态机(state machine)
- 正则表达式图(Putting a diagrams in chains)
- 便签条图(Boxes with text and math)
- 公式说明(Beamer Arrows)
- 负反馈系统控制图(Control system principles)
- 直线相交(Intersecting lines)
- 函数图(Parabola plot)
- 波形图(Parameterized plots)
- 节点形状(Node shapes)
- 连接文字和图形(Connecting text and graphics)
- 韦恩图(Set operations illustrated with Venn diagrams)
- 心智图(Computer science mindmap)
- 太极图(Yin and yang)
- 蛛网图(Spiderweb diagram)
- 分散的点(Scatterplot)
扩展宏包
- bclogo:一个用于创建带标题和logo的彩色盒子的宏包。支持TikZ和PSTricks。
- Beamer:用来创建精美的幻灯片的宏包,可能是( )下最简单易用的幻灯片制作工具了。它和PGF/TikZ出自同一个作者。
- Bodegraph:一个用来绘制Bode图、Nichols-Black图和Nyquist图的宏包。
- CircuiTikz for drawing electrical networks:一套用来在科学刊物中绘制电路图的( )宏包。PGF的电路图库就是根据这个包开发出来的。
- Pgfplots:提供一个非常友好的接口,用来完成普通或者对数尺度函数图的绘制。
- prerex:一个基于PGF的用来创建有节点相连的图表的工具。
- Schéma-blocs avec PGF/TIKZ:用于绘制block。
- sparklines:用于绘制波形图。
- tikz-qtree: Simple syntax and smarter layout for trees:用于在TikZ中绘制树,使用的是Alexis Dimitriadis’Qtree的创建语法。使用它绘制出来的树不会有树节点的碰撞问题,相比TikZ的标准绘制树的功能而言有了较大的改进。
- tikz-timing:用于绘制时序图。
- tkz-berge:一组用于绘制多种图形的宏包。
- tkz-graph:用于绘制基本图形。
- tkz-linknodes:用于连接两个节点元素。
- tkz-tab:用于绘制复杂的表格图案。
实用工具
- extractpgf:一个perl脚本,可以直接由tikzpicture环境里的内容生成pdf文件。
- ktikz:一个小巧的KDE工具,可以可视化生成TikZ图表。
- TikZ2PDF:一个Python脚本工具,可以自动检测文件的改动并预览生成的图案效果。
- TikZIT:一个基于TikZ的跨平台GUI绘图工具。最初是针对TikZ快速绘制点状图而开发,现在也可以用来进行常规的图形绘制。
- Webgen::Tag::TikZ:一个用于生成静态的网站的工具。它支持使用TikZ标签直接在网页中自动生成基于TikZ的图形。
- Blend2TikZ:一个支持将blender曲线转换为TikZ路径的脚本。
- Convert Your VYM Mindmap to PGF/TikZ:一个小巧的C语言程序,可以将 VYM (View Your Mind)的Mindmap图导出的XML文件转换为TikZ的Mindmap图(查看示例文件)。
- Dia:基于GTK+的图形绘制程序。能够将图形保存成PGF代码。
- Dot2TeX:Graphviz转( )。
- dpic:一个类PIC语言的解释器,可以导出成PGF/TikZ等多种格式。它与circuit-macros一起使用,可以生成电路图。
- ePIX:一组命令行工具,能够生成精确控制的函数图,并支持TikZ、PSTricks、EEPIC等多种导出格式。
- Eps2pgf:将Eps图形转换为PGF/TikZ命令 。
- fig2tikz:一个优雅的工具,可以将XFig文件转换为TikZ命令。
- GeoGebra:一个支持几何、线性代数、微积分的数学图像软件,最新的预览版本pre-release version已经支持TikZ格式命令的导出。
- Gnuplot TikZ terminal:一个用Lua编写的Gnuplot终端。能够生成PGF和TikZ代码。
- Inkscape TikZ exporter:Inkscape的一个扩展工具,可以导出TikZ格式的SVG路径。目前还处在开发阶段。
- JFlap2TikZ:JFlap是一个用于有限状态机、图灵机和计算机理论探索实验的工具。JFlap2TikZ则是一个非常有用的脚本,用它可以将JFlap生成的包含图形信息的jff文件转换为包含了TikZ代码的( )文件。
- JpgfDraw:一个使用Java编写的线性图形工具。可以将插画导出为PGF格式命令、PNG以及SVG文件。一个有趣的特性是它可以生成flowfram和shapepar包需要的帧序列和图形信息
- JTikZ:一个基于Java AWT/Swing的PGF/TikZ可视化绘制工具。
- LaTeXPiX:一个GUI绘制工具,支持导出EEPIC和PGF代码,不过只支持Windows。
- Matfig2PGF:一个能够将Matlab图形脚本转换为PGF代码的工具。
- matlab2tikz:基于上面的Matfig2PGF,也是一个能将Matlab的图形转换为TikZ格式命令的工具。
- QtiPlot:一个用于二维/三维数据可视化及数据分析的程序。
- Sketch - A 3D Scene Description Translator:一个小巧而简单的系统,可以生成二维/三维的物体和场景草图。Sketch可生成PSTricks或者PGF/TikZ代码,并允许对绘制出来的三维物体进行标注。
- tikzDevice - TikZ output from R:提供一个针对R项目的全新的图形引擎,支持直接输出为TikZ命令。
- TpX drawing tool:一个轻量级的GUI图形绘制工具,可以绘制矢量图形。只支持Windows。
Latex--TikZ和PGF--高级文本绘图,思维绘图,想到--得到!的更多相关文章
- matlab学习笔记8 基本绘图命令-初级二维绘图/交互式绘图
一起来学matlab-matlab学习笔记8 基本绘图命令_5 初级二维绘图/交互式绘图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合应用&g ...
- 界面编程之QT绘图和绘图设备20180728
/*******************************************************************************************/ 一.绘图 整 ...
- 三维数据曲面图 season绘图 panda绘图
三维数据曲面图 season绘图 panda绘图 待办 enter description here 转化成网格坐标 season可以让绘图更美观 panda绘图可以直接根据panda数据绘制图直接p ...
- 《JAVASCRIPT高级程序设计》Canvas绘图-2D上下文
Canvas是HTML5添加的新元素,这个元素负责在页面中设定一个区域,然后通过JavaScript动态的在这个区域绘制图形.<canvas>由几组API组成,除了具备基本绘图能力的2D上 ...
- Linux高级文本处理命令
cut 一.cut命令 功能:cut命令可以从一个文本文件/文本流中提取文本列 语法: cut -d '分割字符' -f fields ##用于有特定分割字符 cut -c 字符区间 ##用于排列整齐 ...
- Linux中的高级文本处理命令,cut命令,sed命令,awk命令
1.2.1 cut命令 cut命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields ## 用于有特定分隔字符 [r ...
- Web开发——HTML基础(高级文本格式 列表/style)
文档资料参考: 参考:https://developer.mozilla.org/en-US/docs/Learn/HTML/Introduction_to_HTML/Advanced_text_fo ...
- Linux 高级文本处理命令
1.2.1 cut命令 cut命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields ## 用于有特定分隔字符 [ ...
- linux——高级文本处理命令之wc、cut、sort
1. wc :Word Count 命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出 1.1 命令格式: wc [选项]文件... 1.2 命令参数: -c 统计字节数. -l ...
随机推荐
- WebApi的缺点
post只能传递对象 必须要参数一致,不能同名称
- cognos report上钻下钻报表处理方法(1)
cognos report开发中追溯行为,也可以称为上钻下钻行为大致遇到了两种情况 第一种:根据当前报表样式在维度范围内上钻下钻. 第二种:给追溯行为指定报表,传递参数. 可能还有其他情况,这里就不 ...
- Transformer中引用iqd作为数据源的时候数据预览出现乱码
在cognos开发利用transform建模的过程中导入iqd数据源预览乱码问题,下面先描述一下环境 操作系统版本: [root@enfo212 ~]# cat /proc/version Linux ...
- Office WORD如何关闭自动检查语法
只要把打钩的地方全部去掉即可.
- ArcMap概化之消除真曲线
在地理国情项目中,异常折线检查结果中,有报错为:几何类型为esriGeometryCircularArc不合法,而属性表中几何类型(Shape)内容为 "面",这是为何? 作为GI ...
- Scalatra文件下载时中文乱码
可以采用Servlet平台的解决方法进行解决: Ok(file.get, Map( "Content-Type" -> (file.contentType.getOrElse ...
- GraphQL返回分页对象
private GraphQLOutputType testUserOutputType; private GraphQLOutputType pageType; private void initO ...
- 关于csdn博客中案例效果的动态演示
在曾经一篇博文中,网友评论说要是案例效果是动态演示的就好了,我认为说的非常是有道理.由于一个简单的截图不能非常好的展示案例效果.要是有一张gif图能动态的播放案例效果就再好只是了.在这里提供一个小软件 ...
- sp_trace_setfilter sqlserver筛选跟踪或跟踪过滤
sp_trace_setfilter sp_trace_setfilter [ @traceid = ] trace_id , [ @columnid = ] column_id , [ @logic ...
- 【Oracle】存储过程之完整篇
1.语法 create [or replace] procedure pro_name[(parameter1,parameter2,...)] is|as begin plsql_sentences ...