本周刚开始学习 TikZ,第一次渲染时我遇到了一个比较复杂的问题。
我希望能够采用数轴,或许还有 /foreach 循环,来呈现一个超级任务,该超级任务表示平面数轴中的超限序数,而不是这里的螺旋:
一维自然数轴上的每个连续刻度都应按恒定比率接近下一个刻度,渐近地达到 ω,然后是 ω+1、ω+2,...(直到第二条渐近线),然后是 2ω、3ω,...(第三条渐近线)。
在此之上,我还需要一个空集符号,箭头从空集指向数轴上的刻度节点。箭头应该存在于自然数的前几个元素之间,然后是椭圆……将意味着无限连续的箭头。然后有限数量的箭头指向 2ω、3ω,在指向 ω² 的箭头之前有椭圆,等等。
我不介意它是否丑陋,我可以微调缩放比例,只要有人能帮助我获得渲染的基本概念
答案1
PGFMath 带来了该log10
功能。
代码
\documentclass[tikz]{standalone}
\usetikzlibrary{ext.misc}
\usepackage{siunitx}
\begin{document}
\begin{tikzpicture}
\draw[->] (0,0) -- (right:5.1);
\foreach \RIGHT in {0, ..., 4}
\foreach \STEP in {2, ..., 10}
\draw[
/utils/TeX/ifnum={\STEP=10}{
anchor=north west, inner xsep=0pt
}{
nodes={rotate=90}, anchor=east, very thin
}, shift=(right:\RIGHT)]
({log10(\STEP)},0) + (up:2pt) -- +(down:2pt)
node[scale=.2]{$10^{\num{\fpeval{\STEP*10^{\RIGHT}}}}$};
\end{tikzpicture}
\end{document}