在 LaTeX 中绘制集合的最有效方法是什么?

在 LaTeX 中绘制集合的最有效方法是什么?

在 LaTeX 中绘制集合的最佳方法是什么。我想对某个证明的集合进行可视化,因为这样看起来比读起来容易得多。但我不确定是否值得花精力用 tikz 之类的东西来绘制它。或者我应该在 paint 中绘制它并导入图片。

我刚刚拍了一张我在纸上画的草图的照片——有点丑(而且还是德文),但也许它比我的胡言乱语更能说明问题

例子

它们是开集,我会用虚线画出来,这些开集的闭包是紧凑的,所以我会把它画成一条完整的线。每个集合都包括所有先前的集合。(目标是通过这种方式获得一个单位分割)

您会推荐一种快速而粗糙的解决方案吗?或者花时间在 LaTeX 中实际绘制它是否有好处?

答案1

不幸的是,您的图几乎无法读取。因此,以下内容可能有用,也可能没用。

\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{patterns}
\tikzset{% from https://tex.stackexchange.com/a/29367/121799
        hatch distance/.store in=\hatchdistance,
        hatch distance=10pt,
        hatch thickness/.store in=\hatchthickness,
        hatch thickness=2pt
    }

\makeatletter
\pgfdeclarepatternformonly[\hatchdistance,\hatchthickness]{flexible hatch}
{\pgfqpoint{0pt}{0pt}}
{\pgfqpoint{\hatchdistance}{\hatchdistance}}
{\pgfpoint{\hatchdistance-1pt}{\hatchdistance-1pt}}%
{
    \pgfsetcolor{\tikz@pattern@color}
    \pgfsetlinewidth{\hatchthickness}
    \pgfpathmoveto{\pgfqpoint{0pt}{0pt}}
    \pgfpathlineto{\pgfqpoint{\hatchdistance}{\hatchdistance}}
    \pgfusepath{stroke}
}
\makeatother

\begin{document}
\begin{tikzpicture}[elli/.style args={#1 and #2}{insert path={
(#1,0) arc (0:360:#1 and #2)}}]
\draw[green!60!black,pattern=north east lines,pattern color=green!60!black,
even odd rule,elli=3*1.25 and 2*1.25,elli=3 and 2] coordinate[pos=0.5] (x1)
coordinate[pos=0.6] (x2);
\draw[purple,pattern=flexible hatch,pattern color=purple,
even odd rule,elli=3*1.5 and 2*1.5,elli=3*0.75 and 2*0.75];
\draw[red,thick] (x1) circle (1.5 and 0.8);
\draw[red,thick,rotate=15] (x2) circle (1.5 and 0.8);
\end{tikzpicture}
\end{document}

在此处输入图片描述

至于是否应该学习使用 LateX 绘制此类图形的问题:这取决于你。参见这次讨论以获得更多想法。

相关内容