Я использую это решениездесьдля создания длинных тире в матрице, и это работает хорошо. Код такой:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
% possible to customize here the dash aspect
\newcommand{\mydash}{
\draw(0.3,0.5ex)--(-0.3,0.5ex);
}
\begin{document}
\[P=
\begin{tikzpicture}[baseline=-0.5ex]
\matrix(m)[matrix of math nodes,left delimiter=(,right delimiter=),ampersand replacement=\&]
{
\mydash \& y_1 \& \mydash \\
\mydash \& y_2+z_2 \& \mydash \\
\mydash \& y_3 \& \mydash \\
};
\end{tikzpicture}
\]
\end{document}
Однако теперь я уверен, как начать писать полноценные уравнения с его помощью. Мне не очень повезло. Вышеприведенное создает прекрасную матрицу с линиями вдоль строк.
1) Мне нужно что-то вроде P = XYZ, где X, Y и Z показаны с линиями вдоль строк, как в предыдущем примере. Но по какой-то причине я не могу их объединить...
2) Я бы хотел, чтобы скобки матрицы также были квадратными, а не изогнутыми.
решение1
1) Главное понять, что: все происходит в математическом режиме. И tikzpicture
это просто новая среда в математическом режиме. Так что вы не пишете уравнения в Tikz. Вы используете Tikz только для того, чтобы правильно расставить тире. Надеюсь, пример все вам разъяснит:
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{matrix}
% possible to customize here the dash aspect
\newcommand{\mydash}{
\draw(0.3,0.5ex)--(-0.3,0.5ex);
}
\begin{document}
\[X=
\begin{tikzpicture}[baseline=-0.5ex]
\matrix(m)[matrix of math nodes,left delimiter={[},right delimiter={]},ampersand replacement=\&]
{
\mydash \& u_1 \& \mydash \\
\mydash \& u_2 \& \mydash \\
\mydash \& u_3 \& \mydash \\
};
\end{tikzpicture}
\begin{tikzpicture}[baseline=-0.5ex]
\matrix(m)[matrix of math nodes,left delimiter={[},right delimiter={]},ampersand replacement=\&]
{
\mydash \& b_1 \& \mydash \\
\mydash \& b_2 \& \mydash \\
\mydash \& b_3 \& \mydash \\
\mydash \& b_4 \& \mydash \\
};
\end{tikzpicture}
\begin{bmatrix}
\biggl| \\
c_1 \\
\biggl|
\end{bmatrix}
\]
\end{document}
Выход.
2) Для второго вопроса о форме охватывающих скобок нам нужно соответствующим образом изменить параметры: left delimiter
и right delimiter
. В этом случае мы устанавливаем: {[}
и {]}
соответственно.
Надеюсь, это поможет.