我需要用 TikZ 绘制一个群的基本域。搜索结果为这个问题。这几乎和我想要的一样,所以我可以调整代码:
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tikz}
\usetikzlibrary{patterns}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}[x=3cm, y=3cm]
\begin{scope}[y=1cm]
\clip (-.5,0) coordinate (a) |- (.5,4) coordinate (b) -- (b|- a) arc (0:180:1/12) arc (0:180:1/6) arc (0:180:1/6) arc (0:180:1/12);
\fill [pattern=north west lines] (-.5,0) rectangle (.5,4);
\end{scope}
\draw [densely dashed, fill=white!1] (a) arc (180:0:1/12) arc (180:0:1/6) arc (180:0:1/6) arc (180:0:1/12);
\draw (-0.75,0) -- (0.75,0);
\foreach \i [count=\j] in {-1/2,-1/3,0,1/3,1/2}
{\draw (\i,0) coordinate (x\j) edge ++(0,2pt) -- ++(0,-2pt) node [below=5pt, anchor=mid, font=\scriptsize] {\i};}
\end{tikzpicture}
\end{figure}
\end{document}
我需要帮助解决两个问题:数字重叠,虚线 $z=\pm\frac{1}{2}$ 缺失。我可以用
\draw (-.5,0) -- (-.5,x)
但我不知道 x 是什么。
我想得到这个,但是这两行太长了:
谢谢你!
答案1
所以你的两个问题是
- 轴的标签彼此叠在一起。
- 您要添加的描边线条太长。
每个具体问题的解决方案是
- 使用代码行缩放它
\begin{tikzpicture}[x=3cm, y=3cm, scale=3]
。缩放的数字可以更多或更少,但在某些时候,您会遇到页面空间的限制。 - 添加代码行
\draw[densely dashed] (-1/2,0) -- (-1/2,1.33);
并\draw[densely dashed] (1/2,0) -- (1/2,1.33);
相当准确地绘制线条。
这给出了整体代码
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tikz}
\usetikzlibrary{patterns}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}[x=3cm, y=3cm,scale=3]
\begin{scope}[y=1cm]
\clip (-.5,0) coordinate (a) |- (.5,4) coordinate (b) -- (b|- a)
arc (0:180:1/12) arc (0:180:1/6) arc (0:180:1/6) arc
(0:180:1/12);
\fill [pattern=north west lines] (-.5,0) rectangle (.5,4);
\end{scope}
\draw [densely dashed, fill=white!1] (a) arc (180:0:1/12) arc
(180:0:1/6) arc (180:0:1/6) arc (180:0:1/12);
\draw (-0.75,0) -- (0.75,0);
\foreach \i [count=\j] in {-1/2,-1/3,0,1/3,1/2}
{\draw (\i,0) coordinate (x\j) edge ++(0,2pt) -- ++(0,-2pt) node
[below=5pt, anchor=mid, font=\scriptsize] {\i};}
\draw[densely dashed] (-1/2,0) -- (-1/2,1.33);
\draw[densely dashed] (1/2,0) -- (1/2,1.33);
\end{tikzpicture}
\end{figure}
\end{document}
给出图像
希望这可以帮助!