Pstricks:纵轴上有数十万

Pstricks:纵轴上有数十万

喂食

\documentclass{article}
\pagestyle{empty}
\usepackage{pst-all}
\begin{document}
%\renewcommand{\psvlabel}[1]{#1000}%%% the label is appended with 000, i.e., is printed as thousands. Unfortunately, this append 000 also to zero. Perhaps, we could write “if #1=0 then 0 else #1000” as the body of the macro \psvlabel, but I've failed to code this conditional statement in (La)TeX properly so far.
\begin{pspicture}(-2,-1)(1,4.5)
  \psaxes[Dy=25,dy=.4cm,xAxis=false]{->}(0,0)(107,4.5)
\end{pspicture}
\end{document}

随后收益latexdvips

output

如何将数字 0、25000、50000、… 250000 而不是 0、25、50、… 250 作为垂直轴上刻度的标签?大约 12 年前,使用Dy=25000代替 可以Dy=25完成这项工作,但现在如果我们这样做,会得到“!尺寸太大”。

顺便说一句,我们确实希望通过 latex + dvips 进行编译,确实希望有一个零标签,不想要指数符号 (0、25⋅10³、50⋅10³、...、250⋅10³),也不想要 TikZ 解决方案。

答案1

另一种可能性:

\documentclass{article}
\pagestyle{empty}
\usepackage{pst-all}
\begin{document}
\begin{pspicture}(-2,-1)(1,4.5)
\psaxes[ylabelFontSize=\scriptstyle,ylabelFactor=000,showorigin=false,
        Dy=25,dy=0.4cm,xAxis=false]{->}(0,0)(107,4.5)
\psyTick(0){\scriptstyle0}             
\end{pspicture}
\end{document}

enter image description here

而这个:ylabelFactor=\,000看起来更好:

enter image description here

相关内容