我想用tikz
一种简单的方法绘制下图。
但我不知道如何画出看起来像蝴蝶在数学模式下。用标准绘图制作真正的蝴蝶会更有创意。有人能帮助我吗?
笔记:我正在使用以下设置孟加拉语。如果您觉得处理孟加拉语比较困难,您可以向我展示一种使用英文数字和文字绘制图形的方法。
\documentclass[statementpaper]{memoir}
\usepackage[english]{babel}
\babelprovide[import, onchar = fonts ids]{bengali}
% \babelfont[bengali]{rm}[Renderer=Harfbuzz]{FreeSerif}
\babelfont[bengali]{rm}[Renderer=Harfbuzz,AutoFakeBold,AutoFakeSlant=0.3]{Kalpurush}
\babelcharproperty{`।}{locale}{bengali}
% bangla numerals
\babelprovide[maparabic,alph=alphabetic]{bengali}
% fix `matra` in bangla text
\makeatletter
\AtBeginDocument{%
\def\bbl@mapdir#1{%
{\def\languagename{#1}%
\let\bbl@ifrestoring\@firstoftwo % To avoid font warning
\bbl@switchfont
\ifnum\fontid\font>\z@
\directlua{
Babel.locale_props[\the\csname bbl@id@@#1\endcsname]%
['/\bbl@prefontid'] = \fontid\font\space}%
\fi}}}%
\makeatother
\usepackage[tikz]
\begin{document}
\end{document}
提前致谢。
答案1
这使用拉丁字符。您可以用自己的字符替换\alpha
、\beta
、和。8
9
A
B
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{arrows,calc,matrix,shapes.geometric,tikzmark}
\begin{document}
\begin{align*}
\tikzset{el/.style={ellipse,draw,minimum height=1.5em,minimum width=2.5em}}
\tikzmarknode[el]{alpha}{\alpha}
+
\tikzmarknode[el]{beta}{\beta}&=0\\[1em]
\begin{tikzpicture}[ampersand replacement=\&,remember picture]
\matrix[matrix of math nodes,column sep=2em,row sep=2em](m){
9 \& 8\\
A \& B \\
};
\draw let \p1=($(m-1-1.north east)-(m-1-1.south west)$),
\p2=($(m-1-2.north east)-(m-1-2.south west)$),
\p3=($(m-2-1.north east)-(m-2-1.south west)$),
\p4=($(m-2-2.north east)-(m-2-2.south west)$),
\n1={max(\x1,\y1,\x2,\y2,\x3,\y3,\x4,\y4)},
\p5=($(m-1-2)-(m-2-1)$),
\n2={scalar(atan2(\y5,\x5))},
\p6=($(m-2-2)-(m-1-1)$),
\n3={scalar(atan2(\y6,\x6))},
in
($(m-2-1)+(\n2+90:\n1)$)
arc[start angle=\n2+90,end angle=\n2+270,radius=\n1]
-- ($(m-1-2)+(\n2+270:\n1)$)
arc[start angle=\n2-90,end angle=\n2+90,radius=\n1]
-- cycle
($(m-1-1)+(\n3+90:\n1)$)
arc[start angle=\n3+90,end angle=\n3+270,radius=\n1]
-- ($(m-2-2)+(\n3+270:\n1)$)
arc[start angle=\n3-90,end angle=\n3+90,radius=\n1]
-- cycle
[overlay]
($(m-1-1)+(110:\n1)$) edge[-*,bend left] (alpha.-100)
($(m-1-2)+(70:\n1)$) edge[-*,bend right] (beta.-80);
;
\end{tikzpicture}
\end{align*}
\end{document}