左对齐 latex_LaTex中使用XYpic绘制交换图表
XY-pic 是绘制流程图的专用宏包。要想使用它,只需在导言区加上:
\usepackage[options]{xy}
[options]
:options
是列出需要载入的XY-pic
的选项。这些选项基本上被用于调试这个宏包的使用。建议使用all
,可以让 LaTex 载入 XY 的所有命令。
XY-pic
中最常用的是基于矩阵的图形。它的矩阵语法如下:
\xymatrix{object}
{object}
:object
的矩阵语法,和matrix
环境类似,矩阵的内容将以数学模式排版。
如下是使用 XY-pic
绘制在画布上一个矩阵:
\begin{displaymath} \xymatrix{A & B \\ C & D }\end{displaymath}
命令 \xymatrix
必须置于数学模式中。上面的例子设定了一个两行两列的矩阵。只要使用命令 \ar[direction]
添加带方向的箭头即可,而箭头命令要放在其触发的那个单元里。direction
参量是箭头的方向(u
:上,d
:下,r
:右 以及 l
:左)。
命令 \xymatrix
必须置于数学模式中。这里,我们设定了一个两行两列的矩阵。为了画出流程,我们只需要使用命令 \ar
增加带方向的箭头即可。
\begin{displaymath} \xymatrix{ A \ar[r] & B \ar[d] \\ D \ar[u] & C \ar[l] }\end{displaymath}
而对角线可以指向不同的方向参量。下面是一个指向同一个方向的箭头。
要画对角线,可以指出不只一个方向参量。实际上,你还可以重复同一个方向来得到更大的箭头。
\begin{displaymath} \xymatrix{ A \ar[d] \ar[dr] \ar[drr] & B &&\\ C \ar[r] & D \ar[u] & E \ar[r] & F \ar[ull] }\end{displaymath}
还可以给箭头加上标签,只需要使用普通的上标和下标即可。
\begin{displaymath} \xymatrix{ A \ar[r]^f \ar[d]_g & B \ar[d]^{g’} \\ D \ar[r]_{f’} & C }\end{displaymath}
如上图所示,使用上下标会给箭头添加标签。上标表示放在 “箭头的上方”,下标表示放在 “箭头的下方”。如果想把标签放在箭头上可以使用 |
。如下所示:
\begin{displaymath} \xymatrix{ A \ar[r]|f \ar[d]|g & B \ar[d]|{g’} \\ D \ar[r]|\hole & C }\end{displaymath}
上面有一个命令,我们没有见到过,就是 \ar[...]|\hole
,这是用来绘制空心箭头的。
下面给出不同类型的箭头。
\begin{displaymath} \xymatrix{ A \ar@{->}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{-->}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{=>}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{~)}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{.>}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{:>}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{-}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{|->>}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{^(-_>}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@3{->}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{=+}[dr] \\ & B }\end{displaymath}
\begin{displaymath} \xymatrix{ A \ar@{}[dr] \\ & B }\end{displaymath}
从上面这些箭头样式来看,样式是由中间的连线和箭头的前后端点组成,中间的连线可以是直线、虚线、双线、波浪线、点线等样式组成。箭头也可以是尖角、圆角、平角等样式,或是通过上下标调整位置的样式。连线和箭头都可以为空,不同的样式可以组合成多种复杂的形式。
除了直接连线,XY-pic
也可以画出弯曲的箭头连线,其语法是:
\ar@/(曲线)/
(曲线)
:曲线
可以是^
或_
,即沿箭头向左或向右弯曲。
下面给出例子。
\begin{displaymath} \xymatrix{ A \ar@/^/[dr]^{\phi} \\ & B \ar@/^/[ul]^{\psi} }\end{displaymath}
更复杂的曲线可以用 @((出),(入))
指定曲线发出和射入的方向,如下所示,画出有向图的自环:
\begin{displaymath} \xymatrix{ A \ar@{->}[dr] \\ & B \ar@(ur, dr) }\end{displaymath}
在箭头命令 \ar
后面加上 @
可以画出向一侧平移的箭头,这特别适用于在两个对象之间画双箭头,例如:
\begin{displaymath} \xymatrix{ A \ar@<.5ex>[dr]^f \\ & B \ar@<.5ex>[ul]^g }\end{displaymath}
在 XY-pic
中,不仅连线可以有多种样式,矩阵的元素和标签页可以有不同的样式。使用 *
可以引入带有修饰符的对象,其语法如下:
*(修饰){(文本)}
下面看例子。
\begin{displaymath} \xymatrix@=2cm{ *[F]{A} \ar[r]^*+[F=]{k} & *=[o][F]{B} }\end{displaymath}
其中 [F]
表示加框,[F=]
加双框,[o]
表示使用圆形框,+
表示增加对象与边框的间距;XY-pic
中常见的修饰符见下表。这里在 \xymatrix
后面用 @=(距离)
来设置相邻矩阵元素的间距。
语法 | 说明 |
---|---|
+ | 增加边距 |
+ | 增加指定(长度)的边距 |
+= | 扩展边距到正方形,使水平与垂直边距相等 |
- | 减少边距 |
- | 减少指定(长度)的边距 |
-= | 减少边距到正方形,使水平与垂直边距相等 |
! | 不居中 |
[o] | 设置边框为椭圆形 |
[l] [x] [u] [d] | 左、右、上、下对齐 |
[F] [F=] | 单线框、双线框 |
[F.] [F--] | 点线框、虚线框 |
[F-,] [F-<3pt>] | 阴影框 圆角矩形框 |
之前 XY-pic
中的标签都是数学公式,使用 \txt{...}
命令则可以得到文字模式的 XY-pic
对象。使用 \txt
可以在内容中用 \\
换行,使用 txt
可以让文字指定宽度自动换行,如下所示:
\begin{displaymath} \xymatrix{ *++=[o][F]\txt{猫猫} \ar@{}[r] & *+[F]\txt{狗\\狗} }\end{displaymath}
这里组合使用了 +
、+=
、[o]
和 [F]
修饰符来画出比文字稍大的圆形边框。
命令 \composite{... * ...}
可以用来修饰把两个不同的 Xy-pic
对象重叠在一起组合成一个对象,例如:
\begin{displaymath} \xymatrix{ *+[F]{\composite{*+[o][F]{a\quad} * *+[F]{\quad b}}} \ar[r] & *+[F]{c} }\end{displaymath}
在 \xymatrix
命令后面也可以使用如下修饰符来调整矩阵元素的间距:
修饰符 | 描述 |
---|---|
@=(长度) | 设置元素间距 |
@R=(长度) | 设置行间距 |
@C=(长度) | 设置列间距 |
@M=(长度) | 设置元素的默认边距 |
@W=(长度) | 设置元素的默认宽度 |
@H=(长度) | 设置元素的默认高度 |
@L=(长度) | 设置标签的边距 |
其中的等号 =
还可以替换为 +
、+=
、-
和 -=
,其意义与上述Xy-pic
修饰符表一致,例如:
\begin{displaymath} \xymatrix@R=2ex{ A \ar[drr] & B & C \\ D & E & F }\end{displaymath}
在 \xymatrix
后面直接加上 u,d,ul,ur 等方向,则表示将矩阵的连线按此方向旋转,使原来向右的方向指向给定的坐标方向,例如:
\begin{displaymath} \xymatrix@ru{ A \ar[r] & B \ar[d] \\ C \ar[u] & D \ar[l] }\end{displaymath}
这里就介绍到这里,如需了解更多用法,就需要参见宏包的官方指南。
你的赞和在看,我都喜欢!
左对齐 latex_LaTex中使用XYpic绘制交换图表相关推荐
- python怎么左对齐_python中如何用ljust()实现字符串左对齐?
在python编程中,有时为了便于码代码,会将字符串左对齐,这样方便观看与书写,python中用于字符串左对齐的是ljust()方法,本文将向大家介绍ljust()方法.具体内容请看本文. 1.lju ...
- flutter text 左对齐_flutter输入框TextField中文本textAlign对齐分析篇
当我们在使用一个 TextField 构建一个输入框时,会有如下效果: 在实际应用程序的开发中,有时我们会希望输入的文字居中对齐或者是右对齐,那么就应用到了我本文章中所讲述内容,凡是涉及到一个内容,我 ...
- Android ImageView中scaleType=centerCrop实现左对齐效果
在开发过程中,用于显示图片大家用的比较多的应该是ImageView,在显示图片时是通常我们会设置scaleType以达到不同的展示效果.然后通常scaleType能设置的属性仅为: CENTER /c ...
- R语言ggplot2可视化使用vjust和hjust参数对齐图像中的文本注释信息(左对齐、右对齐、居中)实战
R语言ggplot2可视化使用vjust和hjust参数对齐图像中的文本注释信息(左对齐.右对齐.居中)实战 目录
- 将选定的文本对象左对齐、右对齐或对中
;; ;;程序名称:对象水平对齐程序 ;;执行命令:TXTAL ;;程序功能:将选定的对象左对齐.右对齐或对中. ;; (defun c:TXTAL(/ selobjs oldcmdecho) ;定义 ...
- latex中设置标题左对齐
在ctexart类型文章中,默认 \section{标题} 是居中的,现在需要 \section{摘要}居中,但是后面的section的标题是左对齐的.需要插入以下设置: \CTEXsetup[for ...
- Markdown中图片左对齐
Markdown中图片左对齐 左对齐: 在图片前面输入空格即可 - 右对齐 需要使用CSS样式
- Word2016中调节页眉内容一部分左对齐,一部分右对齐
如何让Word页眉内容一部分左对齐,一部分右对齐. 需求: "页眉内容:左对齐为"XXX学位论文",右对齐是各章章名,奇偶页页眉内容一致:" 问题描述: 发现右 ...
- c++中关于设置左对齐和右对齐的问题解决方法
不知道大家有没有试过,设置了左对齐后,后面设置了右对齐,然后左对齐的cout在后面的循环中不起作用了,如图下所示. 解决方法有两个,第一个 第二个 感谢 http://bbs.csdn.net/top ...
- Word中插入公式左对齐,编号右对齐的设置
本文介绍方法采用制表位方法实现,具体操作步骤如下 首先需要确定公式和公式编号在Word中的位置,首先需要确定Word页面设置中的左右页边距和纸张宽度,此操作可以通过查看页面设置找到.页面设置如下,其中 ...
最新文章
- guava之Stopwatch
- 【Linux 内核】Linux 内核源码几个重要的入口源文件及函数介绍 ( 系统初始化 | 内存管理 | 虚拟文件系统 | 网络管理 )
- 修改linux系统iqn,linux iSCSI target配置全过程
- 实践:使用了CompletableFuture之后,程序性能提升了三倍
- struts2基础梳理(二)
- MicroMsg.SDK.WXMediaMessage: checkArgs fail, thumbData is invalid
- mysql数据库银行项目题_银行数据库笔试编程题
- zip保存数据和接口获取压缩包 jsZip
- 阿里飞猪个性化推荐:召回篇
- Bundle-Adjustment并行求解器
- hiveSQL执行计划(explain使用全网最详细!!)
- 安卓投屏大师TC DS如何把手机声音传输到电脑教程
- 对某在线教育平台用户使用RFM模型按价值分类
- oracle中 greatest、east、coalesce
- linux静态路由表无故消失,探究几种静态路由的行为及自动删除行为
- “新基建”下的智慧城轨:城轨为“体” 智慧为“用”
- 前端面试题型汇总(适合应届/社招1年水平)
- ERP与PDM集成基本原理
- 1-3 Burpsuite 抓取手机APP流量
- 2020年数字设计/芯片前端面试经验-格科微+盛科科技+瑞晟+长江存储+兆芯
热门文章
- python3调用摄像头_教你如何利用python调用摄像头
- ajax req.getsession() 获取不到_[AJAX] -AJAX,你要学的,都在这儿(案例小剧场-搜索框提示(经典))...
- eclipse android 服务端,Eclipse搭建服务器,实现与Android的简单通信
- JavaScript:面向对象简单实例——图书馆
- FFmpeg学习(5)——视频加水印
- 人物关系图谱:ECharts 实现
- ubuntu 安装多个CUDA版本并可以随时切换
- ubuntu14.04 配置C/C++开发IDE
- Focal Loss-RetinaNet算法解析
- a.out的构成及运行时在内存区域的分配