如何在 SageMath 中绘制实线

How to plot the real line in SageMath

提问人:H A Helfgott 提问时间:9/17/2023 最后编辑:H A Helfgott 更新时间:10/3/2023 访问量:21

问:

我正在准备一个 SageMath Jupyter 笔记本用于说明目的。我希望能够显示真实的线,上面有选定的点,以及某些点对之间的一些箭头。

虽然这在 LaTeX 中很容易做到(通过 TikZ),但我不知道如何在 Sage 中做到这一点。这感觉应该在 Sage 的能力范围内。该怎么办?

准确地说 - 假设我想生成与以下 TikZ 代码基本相同的输出。

\def\scale{2}
\def\bet{0.2}
\draw[-] (-\scale*3.5,0) -- (\scale*3.5,0); 
\foreach \i in {-3,...,3} {
  \draw[shift={(\scale*\i,0)},color=gray] (0pt,0pt) -- (0pt,-3pt) node[below] {$\frac{\i}{q}$};
  \filldraw (\scale*\i+\scale*\bet,0) circle (2pt) node[above] {$\frac{\i}{q}+\beta$};
}
\foreach \i in {-3,...,-2} {
  \draw[*->*] (\scale*\i+\scale*\bet-0.08,0.04) to[bend right] (\scale*\i+\scale*\bet+\scale+0.08,0.04);
}
\draw[*->] (-\scale+\scale*\bet-0.08,0.04) to[bend right] (0,0);
\end{tikzpicture}
数学 圣人

评论

0赞 davidlowryduda 10/3/2023
我不认为(目前)有很好的方法可以做到这一点。但是写一些东西会在线上做(标记)点是非常简单的,而且鼠尾草有漂亮的直箭头和贝塞尔箭头图形。它不是现成的,但我做工作不会太难。
0赞 H A Helfgott 10/3/2023
例如,可以执行以下 TikZ 代码的作用吗?如何?
0赞 H A Helfgott 10/3/2023
\begin{tikzpicture} \def\scale{2} \def\bet{0.2} \draw[-] (-\scale*3.5,0) -- (\scale*3.5,0);\foreach \i in {-3,...,3} { \draw[shift={(\scale*\i,0)},color=gray] (0pt,0pt) -- (0pt,-3pt) node[below] {$\frac{\i}{q}$}; \filldraw (\scale*\i+\scale*\bet,0) circle (2pt) node[above] {$\frac{\i}{q}+\beta$}; } \foreach \i in {-3,...,-2} { \draw[->] (\scale*\i+\scale*\bet-0.08,0.04) to[bend right] (\scale*\i+\scale*\bet+\scale+0.08,0.04>);0.04) 至 [向右弯曲] (0,0);\end{tikzpicture}
0赞 H A Helfgott 10/3/2023
这格式不好 - 让我把它包括在问题中。

答: 暂无答案