带省略号的行号矩阵怎么写?

2019-11-14 16:19发布

![](https://pics.latexstudio.net/data/images/201911/768627dd27e44ed.jpg) ![](https://pics.latexstudi...

![](https://pics.latexstudio.net/data/images/201911/768627dd27e44ed.jpg) ![](https://pics.latexstudio.net/data/images/201911/f949147c22c4c86.jpg) 抱歉我不懂怎么旋转图片。 就是有一个矩阵,是(i,j)位置为1,其余位置为0,希望用latex实现,并且在矩阵右边、下边写明行列号,但是能需要在矩阵和行号之间用省略号连接起来 附上手写的图片 ![](https://pics.latexstudio.net/data/images/201911/1054fdc7a9a42cc.png)
4条回答
registor
2019-11-15 10:42
首先,三个图的含义明显不一样。 其次,文字表达也不一样: > 一个矩阵,是(i,j)位置为1,其余位置为0。 那么,对角线上的1是咋么回事?若(i,j)位置为1,其不是为全1单位阵! 考虑到推荐了`nicematrix`宏包,就按第2个图做一个吧。 ### 直接用pNiceMatrix环境实现 ```tex \documentclass{standalone} % 支持中文 \usepackage{ctex} % 处理单元格中的换行 \usepackage{makecell} \usepackage{nicematrix} %<---引入宏包 \begin{document} % 用附加列和行进行标记 $\begin{pNiceMatrix}[last-row=10, last-col=10] 1 & & & & & & & & & \\ & \Ddots & & & & & & & & \\ & & 1 & & & & & & & \\ & & & 0 & \Cdots & 1 & & & & \cdots{}i \\ & & & \Vdots & \Ddots & \Vdots & & & & \\ & & & 1 & \Cdots & 0 & & & & \cdots{}j \\ & & & & & & 1 & & & \\ & & & & & & & \Ddots & & \\ & & & & & & & & 1 & n\times{}n \\ & & & \makecell{\vdots\\i} & & \makecell{\vdots\\j} & & & & \end{pNiceMatrix}$ \end{document} ``` 排版结果: ![](https://pics.latexstudio.net/data/images/201911/1376439a3a8e533.png) ### 用pNiceMatrix环境结合TikZ实现 ```tex \documentclass{standalone} % 支持中文 \usepackage{ctex} \usepackage{nicematrix} % nicematrix宏包已引入TikZ,直接添加需要的库即可 \usetikzlibrary{ chains, } \begin{document} % 需要为矩阵命名,注意附加列 $\begin{pNiceMatrix}[name=mymatrix, last-col=10] 1 & & & & & & & & & \\ & \Ddots & & & & & & & & \\ & & 1 & & & & & & & \\ & & & 0 & \Cdots & 1 & & & & \\ & & & \Vdots & \Ddots & \Vdots & & & & \\ & & & 1 & \Cdots & 0 & & & & \\ & & & & & & 1 & & & \\ & & & & & & & \Ddots & & \\ & & & & & & & & 1 & n\times{}n \\ % & & & i & & j & & & & \end{pNiceMatrix}$ % 设置绘图属性 \tikzset{ myoptions/.style={ baseline, remember picture, overlay, name prefix = mymatrix-, every node/.style = {fill = red!15, blend mode = multiply, inner sep = 0pt } } } % 绘制标记及标记线 \begin{tikzpicture}[myoptions] \node[base right = of 4-9] (rowi) {$i$}; \node[base right = of 6-9] (rowj) {$j$}; \node[left = of rowi] (lrowi) {}; \node[left = of rowj] (lrowj) {}; \node[fill = blue!15,below = of 9-4] (coli) {$i$}; \node[fill = blue!15,below = of 9-6] (colj) {$j$}; \draw[red!75,->](rowi)--(lrowi); \draw[red!75,->](rowj)--(lrowj); \draw[blue!75,->](coli)--(9-4); \draw[blue!75,->](colj)--(9-6); \end{tikzpicture} \end{document} ``` 排版结果: ![](https://pics.latexstudio.net/data/images/201911/a10f10c448b4e0a.png) ### 说明 `nicematrix`宏包的说明书,对于一般用户只需要读前22页,按每页1分钟算,也就22分钟。在命令行使用命令`texdoc nicematrix`认真读一下,所有问题也就解决了。

一周热门 更多>