目的是获取垂直轴和水平轴的分数标签(不是十进制)。
根据我的经验,非三角函数标签用小数表示,而三角函数标签可以通过trigLabels
和以分数形式表示trigLabelBase
。我试图滥用这些键来使用 获得分数非三角函数\let\pi=\relax
,但这会导致问题
\pi/n
变成/n
(应该是1/n
),-\pi/n
变成-/n
(应该是-1/n
),-\pi
变成-
(应该是-1
),\pi
变成<empty>
(应该是1
),其中<empty>
代表空。
\pi
我的问题是,将所有问题转换relax
为可避免的问题的最佳技巧是什么?
\documentclass[pstricks,border=12pt,12pt]{standalone}
\usepackage{pst-plot}
\usepackage[nomessages]{fp}
\FPeval\XMin{0-2}
\FPeval\XMax{2}
\FPeval\YMin{0-1}
\FPeval\YMax{1}
\FPeval\temp{1/3}
\psset
{
ytrigLabels=true,
xtrigLabels=true,
trigLabelBase=3,
unit=3cm,
}
\let\pi=\relax
\begin{document}
\begin{pspicture}(\XMin,\YMin)(\XMax,\YMax)
\psaxes[dx=\temp,dy=\temp](0,0)(\XMin,\YMin)(\XMax,\YMax)
\psplot[algebraic,plotpoints=100]{\XMin}{\XMax}{x-2/3}
\end{pspicture}
\end{document}
更一般的情况
例如,有时我需要更改\pi
为。我尝试过\sqrt{2}
\let\pi={\sqrt{2}}
但它不能编译。
答案1
1.71 版本来自http://texnik.dante.de/tex/generic/pst-plot/
知道fractionLabel
:
\errorcontextlines=100
\documentclass[pstricks,border=12pt,12pt]{standalone}
\usepackage{pst-plot}
\psset{fractionLabels,fractionLabelBase=3,unit=3cm}
\begin{document}
\begin{pspicture}(-2,-1)(2,1)
\psaxes[dx=0.333,dy=0.333](0,0)(-2,-1)(2,1)
\psplot[algebraic,plotpoints=100]{-2}{2}{x-2/3}
\end{pspicture}
\end{document}
然而,有一个虚假空间需要进一步调查。