如何沿矩形的边缘绘制括号?

如何沿矩形的边缘绘制括号?

我有以下代码来绘制对角线的矩形

\documentclass[12pt]{article}
\usepackage{geometry}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}[yscale=0.7]
\draw (0,0) rectangle (6,3) (3,3) -- (3,0) -- (0,3) 
(0.4,0.4) node[above right,font=\Huge]{$\mathbf 0$}
foreach \X [count=\Y] in {} {(0,3.5-\Y) node[red,left] {$\X$}
        (-0.5+\Y,3) node[red,above] {$\X$}}
foreach \X [count=\Y] in {} {(2.5+\Y,3) node[above] {$\X$}};
\end{tikzpicture}

\end{document}

您能帮我编辑上面的代码以包含红色括号吗?非常感谢您的帮助!

在此处输入图片描述

答案1

您可以使用括号装饰来实现这一点,我认为库中的括号装饰calligraphy特别有吸引力。请注意,对于这里的对称矩形,您可以只使用矩形节点,但这很难推广到非对称情况,因此我保留了矩形路径。

\documentclass[12pt]{article}
\usepackage{geometry}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing,calligraphy}
\begin{document}

\begin{tikzpicture}[yscale=0.7,
    brace/.style={thick,decorate,
        decoration={calligraphic brace, amplitude=7pt,raise=0.5ex}}]
\draw (0,0) coordinate (O) rectangle (6,3)  coordinate (TR)
    (3,3) coordinate (T) -- (3,0) coordinate (B) -- (0,3) 
    coordinate (TL)
    (0.4,0.4) node[above right,font=\Huge]{$\mathbf{0}$};
\draw[brace] (O)    -- node[left=1.5ex]{$I$} (TL);
\draw[brace] (TL)   -- node[above=1.5ex]{$I$} (T);
\draw[brace] (T)    -- node[above=1.5ex]{$J$} (TR);
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容