보조인자 확장에 의한 3x3 행렬의 행렬식

보조인자 확장에 의한 3x3 행렬의 행렬식

LaTeX에서 이것을 만들 수 있도록 도와주세요.

여기에 이미지 설명을 입력하세요

답변1

나는 귀하의 문제를 정확히 해결하지는 않았지만 유용한 정보를 추출할 수 있는 유사한 문제를 해결했습니다.

나는 훨씬 더 일반적인 행렬식을 풀어야 했습니다. 나는 일반 TikZ를 사용했고행렬TiKZ 내부의 기능. 코드는 다음과 같습니다.

\documentclass[12pt]{article}
\usepackage[pdftex]{graphicx}
\usepackage{pgfplots,tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
  \matrix[
  , matrix of math nodes
  , left delimiter = {(}
  , right delimiter = {)}
  ] (m)
  {
      1 & \rho_1 & 0 & 0 & \cdots & 0 & 0 & \rho_{1}  \\
      \rho_1 & 1 & \rho_1 & 0 & \cdots & 0 & 0 & 0  \\
      0  & \rho_1 & 1 &  \rho_1 & \cdots & 0 & 0 & 0  \\
      \vdots &  & \ddots & \ddots & \ddots & & \vdots & \vdots  \\
       \vdots &  &  & \ddots & \ddots & \ddots & \vdots & \vdots \\
      \vdots &  &  &  & \rho_1 & 1 & \rho_1 & 0  \\
      \vdots & & & & & \rho_1 & 1 & 0  \\
      0 & \cdots & \cdots & \cdots & \cdots & 0  &  \rho_1  & 0 \\
  };
  \coordinate (A) at (2.5,2.6);
  \coordinate (B) at (-3.0,2.65);
  \coordinate (C) at (2.55,-2.7);
  \draw[red, dotted, line width=2]  (A) circle(9pt);
  \draw[red,  line width=2]  (B)--++(5.2,0);
  \draw[red,  line width=2]  (C)--++(0,4.9);

\end{tikzpicture}

\end{document}

솔직히 말해서 나는 시행착오를 거쳐 선분과 원의 길이와 위치를 계산했습니다. 물론, 매트릭스 환경에서 이러한 위치를 우아한 방식으로 얻을 수 있는 방법이 있어야 합니다. 나는 이것을하는 방법을 모른다.

여기에 그림이 있습니다.

여기에 이미지 설명을 입력하세요

답변2

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{fit}

\newcommand{\tikzmark}[2]{\tikz[overlay,remember picture,baseline=(#1.base)] \node (#1) {#2};}

\begin{document}
\[
 \left[\begin{array}{*3{c}}
    \tikzmark{left_end}{0} & 2 & \tikzmark{right_end}{1}\\
    3 & -1 & 2 \\
    \tikzmark{down_left}{4} & 0 & \tikzmark{down}{1}
  \end{array}\right]
\]
\tikz[overlay,remember picture] {
\draw[red,thick,dashed] (left_end) circle (0.2cm);
    \draw[-,red,thick] (left_end) -- ++ (1.7,0) (right_end);
    \draw[-,red,thick] (left_end) -- ++ (0,-1.) (down_left);
}
\end{document}

여기에 이미지 설명을 입력하세요

답변3

이것은Sina Ahmadi의 답변. 해당 답변에서 몇 가지 사항이 변경되면 기꺼이 이를 제거하겠습니다.

  1. \tikzmark라이브러리 의 일부인 환상적인 명령입니다 tikzmark. 이 이름으로 새 명령을 만드는 것은 좋은 습관이 아니라고 주장하고 싶습니다.
  2. 노드 right_enddown_left사용되지 않습니다. 두 개의 하드 코딩된 거리 - ++ (1.7,0)및 에 의해 결정된 대로 선이 그려집니다 - ++ (0,-1.).

\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{tikzmark}

\begin{document}
\[\begin{bmatrix}
    \tikzmarknode[circle,draw=red,inner sep=0.5pt,densely dashed]{A11}{0} & 2 & \tikzmarknode{A13}{1}\\
    3 & -1 & 2 \\
    \tikzmarknode{A31}{4} & 0 & 1
 \end{bmatrix} 
\]
\begin{tikzpicture}[overlay,remember picture] 
\draw[red] (A11.east) -- (A11.east-|A13.east)
(A11.south) -- (A11.south|-A31.south);
\end{tikzpicture}
\end{document}

여기에 이미지 설명을 입력하세요

답변4

으로 그렇게 하는 것이 가능합니다 nicematrix. 이 패키지는 배열의 각 셀 아래에 PGF/Tikz 노드를 생성합니다. 그러면 tikz우리가 원하는 것을 그리는 데 사용할 수 있습니다 .

\documentclass[svgnames]{article}

\usepackage{nicematrix}
\usepackage{tikz}

\begin{document}

$\begin{bNiceMatrix}[margin]
0 & 2  & 1 \\
3 & -1 & 2 \\
4 & 0  & 1
\CodeAfter
\begin{tikzpicture} [color = DeepPink]
\draw [dashed] (1-1) circle (2mm) ;
\draw ([xshift=2mm]1-1.east) -- ([xshift=2mm]1-3.east) ;
\draw ([yshift=-1mm]1-1.south) -- ([yshift=-1mm]3-1.south) ;
\end{tikzpicture}
\end{bNiceMatrix}$

\end{document}

위 코드의 결과

관련 정보