帮助 TikZ 图形(圆形)

帮助 TikZ 图形(圆形)

我不熟悉 TikZ,但我需要使用 TikZ 创建图形,以便为我的论文可视化 Galois 对应关系。我读了手册,然后就迷路了。然而,我使用了 TikzMaker以某种方式实现我的需要但并不完美。

可视化效果如下: 在此处输入图片描述

虽然这是我目前所拥有的,但我发现它在页面上太大了: 在此处输入图片描述

\begin{figure}[!ht]
\centering
\resizebox{1\textwidth}{!}{%
\begin{circuitikz}
\tikzstyle{every node}=[font=\normalsize]
\draw  (6.25,11.25) circle (1.25cm) node {\normalsize $F = \mathbb{Q}$} ;
\draw  (6.25,11.25) circle (2.75cm);
\draw  (6.25,11.25) circle (4.25cm);
\node [font=\normalsize] at (6.25,13) {$E = \mathbb{Q}(\sqrt{5})$};
\node [font=\normalsize] at (6.25,14.5) {$K = \mathbb{Q}(\sqrt{5},i)$};
\draw [ -Stealth] (8.25,10.5) -- (8.25,12);
\draw [ -Stealth] (9.75,10.5) -- (9.75,12);
\end{circuitikz}
}%

\label{fig:my_label}
\end{figure}

所以请帮我把它弄小一点,让箭头的曲率更圆一点。谢谢。

答案1

图表的一些提示:

  • 您使用circuitikz环境,但实际上并未使用circuitikz包提供的任何形状或命令。因此,我建议您只加载tikz包(包也会加载包circuitikz,因此如果您需要此包,则无需tikz单独加载),然后使用简单的tikzpicture环境。您还需要加载arrows.meta库,以便能够使用-Stealth

  • \tikzstyle不应再使用命令。而是使用\tikzset。语法略有不同,但选项的键值对几乎相同(如下例所示)。您可以scale在此处添加一个选项,其值为,例如,0.75缩放整个图表。如果您设置every node/.append style={font=\normalsize},则无需设置font=\normalsize为单个节点(或节点文本内)。

  • 我会将圆圈置于坐标中心(0,0),这样您就可以使用简单的极坐标来定位节点并绘制弯曲的箭头。极坐标在第一个位置处取一个角度(零点向东),在第二个位置处取与原点的距离,两个位置之间用冒号 ( ) 分隔:

  • 使用较新的语法circle:circle[radius=1.25]代替circle (1.25cm)。您可以省略cm,因为 Ti 中的默认单位无论如何,Z 都是 1cm。

  • 要绘制弯曲的箭头,请使用arc如下例所示。


\documentclass[border=10pt]{standalone}
\usepackage{tikz, amsfonts}
\usetikzlibrary{arrows.meta}

\begin{document}
\begin{tikzpicture}
\tikzset{every node/.append style={font=\normalsize}, scale=0.75}
\draw (0,0) circle[radius=1.25] node {$F = \mathbb{Q}$};
\draw (0,0) circle[radius=2.75cm];
\draw (0,0) circle[radius=4.25cm];
\node at (90:1.75) {$E = \mathbb{Q}(\sqrt{5})$};
\node at (90:3.25) {$K = \mathbb{Q}(\sqrt{5},i)$};
\draw[-Stealth] (-45:2) arc[start angle=-45, end angle=0, radius=2];
\draw[-Stealth] (-45:3.5) arc[start angle=-45, end angle=0, radius=3.5];
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案2

它的绘制方法很简单:左侧部分只是 3 个同心圆,中间有一些node用于标记的圆点和箭头弧;右侧部分只是node用箭头连接的圆点,并且全部向右移动。这scale允许您控制大小

在此处输入图片描述

\documentclass{article}
\usepackage[margin=3cm]{geometry}
\usepackage{amssymb,amsmath}
\usepackage{lipsum}   % >>> for dummy texts
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\begin{document}
\lipsum[1]
\begin{center}  
\begin{tikzpicture}[>={Straight Barb[angle=60:5pt 2]}] 
% change the scale as desired
\begin{scope}[scale=1.2] % the left part
\draw[thick] 
(0,0) circle(1) node{$F=\mathbb{Q}$}
(0,0) circle(2) +(90:1.5) node{$E=\mathbb{Q}(\sqrt{5})$}    
(0,0) circle(3) +(90:2.5) node{$K=\mathbb{Q}(\sqrt{5},i)$}
;
\draw[->,gray] (-45:1.5) arc(-45:45:1.5);
\draw[->,gray] (-45:2.5) arc(-45:45:2.5);
\end{scope}

\begin{scope}[shift={(5.5,0)}] % the right part
\path
(0,0)   node (F) {$F$} +(3.5,0) node (KF) {$\rm{Gal}(K/F)$}
(0,1.5) node (E) {$E$} +(3.5,0) node (KE) {$\rm{Gal}(K/K)$}
(0,3)   node (K) {$K$} +(3.5,0) node (KK) {$\rm{Gal}(K/K)$}
; 
\draw[->] (F)--(E);
\draw[->] (E)--(K);
\draw[->] (KK)--(KE);
\draw[->] (KE)--(KF);
\draw[dashed] (F)--(KF) (E)--(KE) (K)--(KK);
\end{scope}
\end{tikzpicture}
\end{center}
\lipsum[5]
\end{document}

答案3

与 Jasper 的方法相同,即做最少的事情,但有一些差异。

我发现从独立的绘图类开始总是一个好主意。您可以稍后修改该类、复制代码或做类似的事情。

为了帮助您的学习过程,我建议您执行以下操作,也许重复几次以掌握这个强大的工具:

  • 学习手册第 1 部分中的至少一个示例,即教程
  • 并行查找所有 tikz 语句,例如从下面的代码中(使用搜索功能)

结果

\documentclass[10pt,border=3mm,tikz]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}% for the arrows in first diagram
\usetikzlibrary{positioning}% for the mapping diagram
\usepackage{amssymb}

\begin{document}
 \begin{tikzpicture}[
    execute at begin node=$,
    execute at end node=$,% this way you can omit the $..$
    > = {stealth}]
    % ~~~ circles ~~~~~~~~~~~~~~
    \draw (0,0) circle(1.25);
    \draw (0,0) circle(2.75);
    \draw (0,0) circle(4.25);
    
    % ~~~ Text / nodes ~~~~~~
    \node at (0,0)      {F = \mathbb{Q}};
    \node at (0,1.8)    {E = \mathbb{Q}(\sqrt{5})};
    \node at (0,3.5)    {K = \mathbb{Q}(\sqrt{5},i)};
    
    % ~~~+ arcs ~~~~~~~~~~~~~~~~
    % [->] draws a line with an arrow, while [gray] and [dotted] indicate ideas for you
    \draw [->,gray] (-45:1.8) arc[start angle=-45,end angle=0,radius=1.8];
    \draw [->,dotted] (-45:3.5) arc[start angle=-45,end angle=0,radius=3.5];
 \end{tikzpicture}
 
 \begin{tikzpicture}[> = {Stealth}]
    % ~~~ nodes ~~~~
     \node              (K)  {K};% node's name is K, to be referenced later
     \node[below=of K]  (E)  {E};
     \node[below=of E]  (F)  {F};
     
     \node[right=of K]  (GK) {Gal(K/K)};
     \node[right=of E]  (GE) {Gal(K/E)};
     \node[right=of F]  (GF) {Gal(K/F)};
     
     % ~~~ lines ~~~~~~~~~~~
    \draw[dashed] (K) -- (GK);% () means: recall positions of nodes named K, GK etc.
    \draw[dashed] (E) -- (GE);   
    \draw[dashed] (F) -- (GF);   
     
    \draw[->] (F) -- (E);
    \draw[->] (E) -- (K);
    
    \draw[->] (GK) -- (GE);
    \draw[->] (GE) -- (GF);
 \end{tikzpicture}

\end{document}

答案4

在 TikzMaker 中,它是一个用于缩放图形的滑块。它位于左侧的图形设置下。在此处输入图片描述

相关内容