提问于:
浏览数:
4154
![](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 回答
2
<p>这个<a href="https://wenda.latexstudio.net/q-1403.html">问题</a>是你问的么?</p>
<p>感觉表达有歧义而且很不友好。其实我是建议你看 <a href="https://wenda.latexstudio.net/q-1403.html">这里</a></p>
作者追问:2019-11-14 22:01
你可能没明白我的意思,题目描述里面有图片啊,和你说的好像不是一回事。。。
回答: 2019-11-14 22:21
肯定不知道你想要干嘛,你这连基本的语言描述能力都没有。图画得像2岁小孩子画的东西,谁知道你要干什么。
回答: 2019-11-14 22:22
肯定不知道你想要干嘛,你这连基本的语言描述能力都没有。图画得像2岁小孩子画的东西,谁知道你要干什么。
-
或许可以看一下 nicematrix 宏包 – Iydon 2019-11-14 18:07 回复
2
以下例子来自`nicematrix`宏包. 结果可以看最后, 虽然和描述略有不同, 但是可以在第一行/最后一行(第一列/最后一列) 手动添加省略号.
![编译结果](https://pics.latexstudio.net/data/images/201911/d9782956a0bbed0.jpg "编译结果")
<details>
<summary>代码, 请点击此处显示.</summary>
<pre><code>
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\begin{equation*}
\begin{pNiceArray}{C|CC:C}[
first-row,last-row,first-col,last-col,
code-for-first-row=\color{blue}\scriptstyle,
code-for-last-row=\color{blue}\scriptstyle,
code-for-first-col=\color{blue}\scriptstyle,
code-for-last-col=\color{blue}\scriptstyle]
& C_1 & C_2 & C_3 & C_4 & \\
L_1 & 1 & 2 & 3 & 4 & L_1 \\ \hline
L_2 & 5 & 6 & 7 & 8 & L_2 \\
L_3 & 9 & 10 & 11 & 12 & L_3 \\ \hdottedline
L_4 & 13 & 14 & 15 & 16 & L_4 \\
& C_1 & C_2 & C_3 & C_4 &
\end{pNiceArray}
\end{equation*}
\begin{equation*}
\NiceMatrixOptions{transparent}
\begin{pmatrix}
1 & \cdots & \cdots & 1 \\
0 & \ddots & & \vdots \\
\vdots & \ddots & \ddots & \vdots \\
0 & \cdots & 0 & 1
\end{pmatrix}
\end{equation*}
\end{document}
</code></pre>
</details>
作者追问:2019-11-14 22:02
你可能没明白我的意思,题目描述里面有图片啊,和你说的好像不是一回事。。。
回答: 2019-11-14 23:36
你确定? `nicematrix` 宏包里有你需要的样式, 建议你看宏包, 我没有说我的回答完全符合你的问题.
1
首先,三个图的含义明显不一样。
其次,文字表达也不一样:
> 一个矩阵,是(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`认真读一下,所有问题也就解决了。
0
类似的问题以前一直有人问,你可以查询一下
你的回答
请登录后回答
你的回答将会帮助更多人,请务必认真回答问题。