texlive[60620] Master/texmf-dist: pst-plot (26sep21)
commits+karl at tug.org
commits+karl at tug.org
Sun Sep 26 23:26:47 CEST 2021
Revision: 60620
http://tug.org/svn/texlive?view=revision&revision=60620
Author: karl
Date: 2021-09-26 23:26:47 +0200 (Sun, 26 Sep 2021)
Log Message:
-----------
pst-plot (26sep21)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/generic/pst-plot/Changes
trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.bib
trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.pdf
trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.tex
trunk/Master/texmf-dist/tex/generic/pst-plot/pst-plot.tex
trunk/Master/texmf-dist/tex/latex/pst-plot/pst-plot.sty
Modified: trunk/Master/texmf-dist/doc/generic/pst-plot/Changes
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pst-plot/Changes 2021-09-26 21:26:30 UTC (rev 60619)
+++ trunk/Master/texmf-dist/doc/generic/pst-plot/Changes 2021-09-26 21:26:47 UTC (rev 60620)
@@ -1,4 +1,8 @@
----- pst-plot.tex
+1.93 2021-09-23 - dont't use function names from pstricks.pro
+ for own use NArray->NArray at i
+ - fix for LSM plots; needs gsave .. grestore
+ - fix for lualatex and \psparametricplot -> use a userdict
1.92 2019-05-16 - fix for missing position test of special labels
1.91 2018-08-31 - fix for showorigin and triglabels
1.90 2018-03-28 - fix for showoriginfalse and yAxis=false
Modified: trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.bib
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.bib 2021-09-26 21:26:30 UTC (rev 60619)
+++ trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.bib 2021-09-26 21:26:47 UTC (rev 60620)
@@ -1,6 +1,22 @@
%% -*-bibtex-*-
@STRING{tugboat = {TUGboat} }
@STRING{dtk = {{D}ie {\TeX}nische {K}om{\"o}die} }
+ at STRING{beiprogramm = {{\TeX}-Beiprogramm}}
+ at STRING{bretter = {Bretter, die die Welt bedeuten}}
+ at STRING{editorial = {Editorial}}
+ at STRING{fremdebuehne = {Von fremden Bühnen}}
+ at STRING{fundus = {Aus dem Fundus}}
+ at STRING{grusswort = {Grußwort}}
+ at STRING{hinterbuehne = {Hinter der Bühne}}
+ at STRING{komascript = {\KOMAScript}}
+ at STRING{leserbriefe = {Leserbriefe}}
+ at STRING{magazin = {Magazin}}
+ at STRING{rezensionen = {Bücher und Rezensionen}}
+ at STRING{schonimmer = {Was Sie schon immer über {\TeX} wissen wollten, \dots}}
+ at STRING{spielplan = {Spielplan}}
+ at STRING{theaterkasse = {Von der Theaterkasse}}
+ at STRING{theatertage = {{\TeX}-Theatertage}}
+ at STRING{tippstricks = {Tipps und Tricks}}
@Book{companion,
author = {Michel Goosens and Frank Mittelbach and Sebastian Rahtz and Dennis Roegel and Herbert Vo\ss},
@@ -95,3 +111,21 @@
location = {Heidelberg and Berlin}
}
+ at Article{dtk02.2:jackson.voss:plot-funktionen,
+ author = {Laura E. Jackson and Herbert Voß},
+ title = {Die {P}lot-{F}unktionen von {\texttt{pst-plot}}},
+ journal = dtk,
+ year = 2002,
+ volume = {2/02},
+ altvolume = 2,
+ altnumber = 14,
+ month = jun,
+ pages = {27--34},
+ annote = bretter,
+ abstract = { Im letzten Heft wurden die mathematischen Funktionen von
+ \PS~im Zusammenhang mit dem {\LaTeX}-Paket
+ \texttt{pst-plot} zum Zeichnen von Funktionen beschrieben
+ und durch Beispiele erl{\"a}utert. In diesem Teil werden
+ die bislang nur erw{\"a}hnten Plot-Funktionen f{\"u}r
+ externe Daten behandelt. }
+}
Modified: trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.tex 2021-09-26 21:26:30 UTC (rev 60619)
+++ trunk/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.tex 2021-09-26 21:26:47 UTC (rev 60620)
@@ -1,8 +1,10 @@
+\RequirePackage{pdfmanagement-testphase}
+\DeclareDocumentMetadata{}
% $Id: pst-plot-doc.tex 1056 2019-05-17 07:39:59Z herbert $
-\documentclass[11pt,english,BCOR10mm,DIV12,bibliography=totoc,parskip=false,smallheadings
- headexclude,footexclude,oneside,dvipsnames,svgnames]{pst-doc}
+\documentclass[11pt,english,BCOR=10mm,DIV=12,bibliography=totoc,parskip=false,headings=small,
+ headinclude=false,footinclude=false,twoside]{pst-doc}
\listfiles
-\usepackage[utf8]{inputenc}
+%\usepackage[utf8]{inputenc}
\usepackage{pst-ode,
pst-node,
pst-calculate,
@@ -31,7 +33,7 @@
\author{Timothy Van Zandt\\Herbert Vo\ss}
\date{\today}
-\maketitle
+\settitle
\begin{abstract}
@@ -40,7 +42,7 @@
the package \LPack{pstricks-add}. This documentation describes only the
new and changed stuff. For the default behaviour look into the
documentation part of the base \LPack{pstricks} package. You find the
-documentation here: \url{http://mirrors.ctan.org/graphics/pstricks/base/doc/}.
+documentation here: \url{https://mirror.ctan.org/graphics/pstricks/base/doc/}.
\vfill
\noindent
@@ -58,6 +60,7 @@
Christophe Jorssen;
Uwe Kern;
Alexander Kornrumpf;
+Marcel Krüger;
Manuel Luque;
Patrice Mégret;
Jens-Uwe Morawski;
@@ -321,6 +324,9 @@
{ const1 x 100 mul dup mul mul Euler const2 neg x 100 mul dup mul mul exp mul 2000 mul}
\end{pspicture}
+
+
+
%--------------------------------------------------------------------------------------
\clearpage
\section{New Macro \nxLcs{psBoxplot}}
@@ -394,8 +400,6 @@
-
-
The next example uses an external file for the data, which must first be read by the
macro \Lcs{readdata}. The next one creates a horizontal boxplot by rotating
the output with $-90$ degrees.
@@ -950,7 +954,7 @@
\begin{compactitem}
\item \Lcs{pslegend} uses the commands \Lcs{tabular} and \Lcs{endtabular}, which are only available
- when running \LaTeX. With \TeX\ you have to redefine the macro \Lcs{pslegend at ii}:
+ when running \LaTeX. With \TeX\ you have to redefine the macro \nxLcs{pslegend at ii}:
\begin{lstlisting}
\def\pslegend at ii[#1](#2){\rput[#1](!#2){\psframebox[style=legendstyle]{%
\footnotesize\tabcolsep=2pt%
@@ -957,8 +961,8 @@
\tabular[t]{@{}ll@{}}\pslegend at text\endtabular}}\gdef\pslegend at text{}}
\end{lstlisting}
\item The fontsize can be changed locally for each cell or globally, when also redefining the
- macro \Lcs{pslegend at ii}.
-\item If you want to use more than two columns for the table or a shadow box, then redefine \Lcs{pslegend at ii}.
+ macro \nxLcs{pslegend at ii}.
+\item If you want to use more than two columns for the table or a shadow box, then redefine \nxLcs{pslegend at ii}.
\end{compactitem}
The macro \Lcs{psframebox} uses the style \Lkeyval{legendstyle} which is preset to \Lkeyset{fillstyle=solid},
@@ -1079,8 +1083,8 @@
\Lkeyword{trigLabels} option, the macros \Lcs{pshlabel} and
\Lcs{psvlabel} shouldn't be redefined, because the package does
it itself internally in these cases. However, if you need a
-redefinition, then do it for \Lcs{pst@@@hlabel} and
-\Lcs{pst@@@vlabel} with
+redefinition, then do it for \nxLcs{pst@@@hlabel} and
+\nxLcs{pst@@@vlabel} with
\begin{lstlisting}[style=syntax]
\makeatletter
@@ -1153,12 +1157,12 @@
\Lkeyword{ury} & length & 0pt & \pageref{psgraphoptions}\\
\Lkeyword{valuewidth} & integer & 10 & \pageref{values}\\
\Lkeyword{xAxis} & boolean & \true & \pageref{xyAxes}\\%ok
-\Lkeyword{xAxisLabel} & literal & \{\Lcs{@empty}\} & \pageref{psgraphoptions}\\
-\Lkeyword{xAxisLabelPos} & (x,y) or empty & \{\Lcs{@empty}\} & \pageref{psgraphoptions}\\
+\Lkeyword{xAxisLabel} & literal & \{\nxLcs{@empty}\} & \pageref{psgraphoptions}\\
+\Lkeyword{xAxisLabelPos} & (x,y) or empty & \{\nxLcs{@empty}\} & \pageref{psgraphoptions}\\
\Lkeyword{xDecimals} & integer or empty & \{\} & \pageref{xydecimals}\\%ok
\Lkeyword{xEnd} & integer or empty & \{\} & \pageref{nxend}\\
-\Lkeyword{xLabels} & list & \{\Lcs{empty}\} & \pageref{xLabels}\\
-\Lkeyword{xlabelFactor} & anything & \{\Lcs{@empty}\} & \pageref{labelfactor}\\
+\Lkeyword{xLabels} & list & \{\nxLcs{empty}\} & \pageref{xLabels}\\
+\Lkeyword{xlabelFactor} & anything & \{\nxLcs{@empty}\} & \pageref{labelfactor}\\
\Lkeyword{xlabelFontSize} & macro & \{\} & \pageref{labelfontsize}\\
\Lkeyword{xlabelOffset} & length & 0 & \pageref{labelOffset}\\
\Lkeyword{xlabelPos} & \Lkeyval{bottom},\Lkeyval{axis},\Lkeyval{top}
@@ -1183,12 +1187,12 @@
\Lkeyword{xyDecimals} & integer or empty & \{\} & \pageref{xydecimals}\\%ok
\Lkeyword{xylogBase} & integer or empty & \{\} & \pageref{xylogbase}\\
\Lkeyword{yAxis} & boolean & \true & \pageref{xyAxes}\\%ok
-\Lkeyword{yAxisLabel} & literal & \{\Lcs{@empty}\} & \pageref{psgraphoptions}\\
-\Lkeyword{yAxisLabelPos} & (x,y) or empty & \{\Lcs{@empty}\} & \pageref{psgraphoptions}\\
+\Lkeyword{yAxisLabel} & literal & \{\nxLcs{@empty}\} & \pageref{psgraphoptions}\\
+\Lkeyword{yAxisLabelPos} & (x,y) or empty & \{\nxLcs{@empty}\} & \pageref{psgraphoptions}\\
\Lkeyword{yDecimals} & integer or empty & \{\} & \pageref{xydecimals}\\%ok
\Lkeyword{yEnd} & integer or empty & \{\} & \pageref{ystartend}\\
-\Lkeyword{yLabels} & list & \{\Lcs{empty}\} & \pageref{xLabels}\\
-\Lkeyword{ylabelFactor} & literal & \{\Lcs{empty}\} & \pageref{labelfactor}\\
+\Lkeyword{yLabels} & list & \{\nxLcs{empty}\} & \pageref{xLabels}\\
+\Lkeyword{ylabelFactor} & literal & \{nx\Lcs{empty}\} & \pageref{labelfactor}\\
\Lkeyword{ylabelFontSize} & macro & \{\} & \pageref{labelfontsize}\\
\Lkeyword{ylabelOffset} & length & 0 & \pageref{labelOffset}\\
\Lkeyword{ylabelPos} & \Lkeyval{left}|\Lkeyval{axis}|\Lkeyval{right}
@@ -2493,6 +2497,9 @@
combination of the two foregoing modes and the function is now
$y=\log x$ and is shown in the following example.
+\psset{xyAxes=true}
+
+
\medskip
\begin{LTXexample}[width=7cm]
\begin{pspicture}(-3.5,-3.5)(3.5,3.5)
@@ -2737,6 +2744,10 @@
ticksize=10pt,subtickcolor=blue,subticksize=0.75,ylabelPos=right]{->}(0,0)(5,5)(-5,-5)
\end{lstlisting}
+
+\psset{xyAxes=true}
+
+
\begin{LTXexample}[width=5.5cm]
\pspicture(5,5.5)
\psaxes[subticks=4,ticksize=6pt,subticksize=0.5,%
@@ -3340,6 +3351,9 @@
\bgroup
\centering
\psset{lly=-.5cm}
+\begin{filecontents*}[force]{data/LSM.data}
+0 1 1 3 2.8 4 3 2.9 2 5 4 4 5 5.5 6 8.2 8 7
+\end{filecontents*}
\readdata{\data}{data/LSM.data}
\begin{psgraph}[arrows=->](0,0)(0,0)(8,8){.5\textwidth}{!}
\listplot[plotstyle=dots]{\data}
@@ -3349,7 +3363,7 @@
\begin{lstlisting}
-\begin{filecontents*}{data/LSM.data}
+\begin{filecontents*}[force]{data/LSM.data}
0 1 1 3 2.8 4 3 2.9 2 5 4 4 5 5.5 6 8.2 8 7
\end{filecontents*}
\psset{lly=-.5cm}
Modified: trunk/Master/texmf-dist/tex/generic/pst-plot/pst-plot.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pst-plot/pst-plot.tex 2021-09-26 21:26:30 UTC (rev 60619)
+++ trunk/Master/texmf-dist/tex/generic/pst-plot/pst-plot.tex 2021-09-26 21:26:47 UTC (rev 60620)
@@ -1,4 +1,4 @@
-% $Id: pst-plot.tex 1056 2019-05-17 07:39:59Z herbert $
+% $Id: pst-plot.tex 1074 2019-07-16 16:07:00Z herbert $
%%
%% BEGIN pst-plot.tex
%%
@@ -23,8 +23,8 @@
\ifx\PSTFPloaded\endinput\else \input pst-fp.tex \fi
\ifx\MultidoLoaded\endinput\else \input multido.tex \fi
%
-\def\fileversion{1.92}
-\def\filedate{2019/05/16}
+\def\fileversion{1.93}
+\def\filedate{2021/09/23}
\message{ v\fileversion, \filedate\space (tvz,hv)}
%
\edef\TheAtCode{\the\catcode`\@}
@@ -378,11 +378,14 @@
} repeat
/u xiSquare fi mul xi xifi mul sub n xiSquare mul xi dup mul sub div def
/v n xifi mul xi fi mul sub n xiSquare mul xi dup mul sub div def
+ gsave
\Pst at Debug\space 0 gt { % print the equation
- /NimbusSanL-Regu findfont 12 scalefont setfont
+ \ifpstGSfonts /NimbusSanL-Regu \else /Helvetica \fi
+ findfont 12 scalefont setfont
0 -50 moveto (y=) show % print y=
v \pst at number\psyunit \pst at number\psxunit div div 20 string cvs show ( x+) show % m*x+
u \pst at number\psyunit div 20 string cvs show } if
+ grestore
newpath
(\psk at xStart) length 0 gt % special start value?
{ \psk at xStart\space \pst at number\psxunit mul }
@@ -417,64 +420,64 @@
\addto at pscode{
/Barwidth \number\Add at barwidth 2 div def
/Endwidth Barwidth \psk at arrowlength\space mul def
- NArray bubblesort
- /NArray ED % save sorted array
- [ NArray { yUnit mul } forall ] /NArray ED % multiply with y unit
- NArray 0 get /MinVal ED % save minimum
- NArray m 1 sub get /MaxVal ED % maximum
+ NArray at i bubblesort
+ /NArray at i ED % save sorted array
+ [ NArray at i { yUnit mul } forall ] /NArray at i ED % multiply with y unit
+ NArray at i 0 get /MinVal ED % save minimum
+ NArray at i m 1 sub get /MaxVal ED % maximum
m 2 div cvi /M ED % the middle
- NArray length 2 mod 0 eq { % even numbers of entries
- M 1 sub NArray exch get % even number of values
- NArray M get % and the upper one
+ NArray at i length 2 mod 0 eq { % even numbers of entries
+ M 1 sub NArray at i exch get % even number of values
+ NArray at i M get % and the upper one
add 2 div /Median ED % the median
}{
- NArray M get /Median ED % odd numbers of values
+ NArray at i M get /Median ED % odd numbers of values
} ifelse
m 4 mod 0 eq { % get the lower Quartil even/odd
- m 4 div cvi dup 1 sub NArray exch get
- exch NArray exch get
+ m 4 div cvi dup 1 sub NArray at i exch get
+ exch NArray at i exch get
% M 2 div cvi 1 add dup /M2 ED % save middle index
-% 1 sub NArray exch get
-% NArray M2 get
+% 1 sub NArray at i exch get
+% NArray at i M2 get
add 2 div floor /LowerQuartil ED
}{
- NArray M 2 div cvi get /LowerQuartil ED
+ NArray at i M 2 div cvi get /LowerQuartil ED
} ifelse % end even/odd
m 0.75 mul dup dup cvi sub 0 eq { % get the upper Quartil
% 0.75*m is an integer
- cvi dup 1 sub NArray exch get exch NArray exch get
+ cvi dup 1 sub NArray at i exch get exch NArray at i exch get
% M 1.5 mul cvi 1 add dup /M3 ED
-% 1 sub NArray exch get
-% NArray M3 get
+% 1 sub NArray at i exch get
+% NArray at i M3 get
add 2 div floor /UpperQuartil ED
}{ % upper quartil
- NArray m 0.75 mul floor cvi get /UpperQuartil ED
+ NArray at i m 0.75 mul floor cvi get /UpperQuartil ED
} ifelse
%
/IQL UpperQuartil LowerQuartil sub \pst at IQLfactor\space mul def
0 1 m 1 sub { % Index on stack
dup /Index ED
- NArray exch get LowerQuartil sub abs IQL sub 0 gt {
+ NArray at i exch get LowerQuartil sub abs IQL sub 0 gt {
\psk at dotsize
\@nameuse{psds@\psk at dotstyle}
- 0 NArray Index get \psk at postAction
+ 0 NArray at i Index get \psk at postAction
Dot
- NArray Index LowerQuartil UpperQuartil LowerQuartil sub \pst at IQLfactor\space mul sub
+ NArray at i Index LowerQuartil UpperQuartil LowerQuartil sub \pst at IQLfactor\space mul sub
dup /MinVal ED put % replace with 1.5 IQL
- NArray Index 1 add get /MinVal ED
+ NArray at i Index 1 add get /MinVal ED
} { exit } ifelse
} for
m 1 sub -1 0 { % Index on stack
dup /Index ED
- NArray exch get UpperQuartil sub abs IQL sub 0 gt {
+ NArray at i exch get UpperQuartil sub abs IQL sub 0 gt {
% newpath
\psk at dotsize
\@nameuse{psds@\psk at dotstyle}
- 0 NArray Index get \psk at postAction\space
+ 0 NArray at i Index get \psk at postAction\space
Dot
- NArray Index UpperQuartil LowerQuartil sub \pst at IQLfactor\space mul UpperQuartil add
+ NArray at i Index UpperQuartil LowerQuartil sub \pst at IQLfactor\space mul UpperQuartil add
dup /MaxVal ED put % replace with 1.5 IQL
- NArray Index 1 sub get /MaxVal ED
+ NArray at i Index 1 sub get /MaxVal ED
}{ exit } ifelse
} for
%
@@ -544,8 +547,8 @@
\@nameuse{beginplot@\psplotstyle}%
\addto at pscode{
/D {} def
- [ #1 ] /NArray ED
- NArray aload length /m ED
+ [ #1 ] /NArray at i ED
+ NArray at i aload length /m ED
/xUnit \pst at number\psxunit def
/yUnit \pst at number\psyunit def
}%
@@ -1082,11 +1085,12 @@
\def\parametricplot at i#1#2{\@ifnextchar[{\parametricplot at x{#1}{#2}}{\parametricplot at x{#1}{#2}[]}}
\def\parametricplot at x#1#2[#3]{\@ifnextchar[{\parametricplot at xi{#1}{#2}[#3]}{\parametricplot at xi{#1}{#2}[#3][]}}
\def\parametricplot at xi#1#2[#3][#4]#5{%
- \pst at killglue%
+ \pst at killglue
\begingroup%
- \use at par%
+ \use at par
\@nameuse{beginplot@\psplotstyle}%
\addto at pscode{%
+ 20 dict begin
#3 %prefix PS code
\psplot at init
/t #1 def
@@ -1126,7 +1130,7 @@
\@pstfalse
\@nameuse{testqp@\psplotstyle}%
\if at pst\parametricplot at ii{#4}\else\parametricplot at iii{#4}\fi
- \endgroup%
+ \endgroup
\ignorespaces}
%
\def\parametricplot at ii#1{% para is the post code
@@ -1138,7 +1142,8 @@
/t 3 -1 roll def 2 copy gt { exch } if pop
/t t 3 -1 roll add dup t1 gt {pop t1} if def
xy \@nameuse{doqp@\psplotstyle}
- t t1 eq { exit } if } loop}%
+ t t1 eq { exit } if } loop
+ }%
\else\pst at killglue%
\addto at pscode{%
/ps at Exit false def
@@ -1154,7 +1159,7 @@
} if
}%
\fi%
- \addto at pscode{ #1 }%
+ \addto at pscode{ #1 end }% also end of userdict
\@nameuse{endqp@\psplotstyle}}
%
\def\parametricplot at iii#1{%
@@ -1170,7 +1175,8 @@
t t1 eq { exit } if } loop
xy
2 copy \tx at UserCoor 2 array astore /FinalState ED
- n 2 roll}%
+ n 2 roll
+ }%
\else\pst at killglue%
\addto at pscode{
mark
@@ -1183,9 +1189,10 @@
} repeat
/t t1 def
xy
- n 2 roll}%
- \fi%
- \addto at pscode{ #1 }%
+ n 2 roll
+ }%
+ \fi
+ \addto at pscode{ #1 end}% also end of userdict
\@nameuse{endplot@\psplotstyle}}
%
%
Modified: trunk/Master/texmf-dist/tex/latex/pst-plot/pst-plot.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/pst-plot/pst-plot.sty 2021-09-26 21:26:30 UTC (rev 60619)
+++ trunk/Master/texmf-dist/tex/latex/pst-plot/pst-plot.sty 2021-09-26 21:26:47 UTC (rev 60620)
@@ -29,7 +29,7 @@
\RequirePackage{pstricks}
\RequirePackage{pst-xkey}
\RequirePackage{multido}
-\ProvidesPackage{pst-plot}[2011/04/13 package wrapper for pst-plot.tex (hv)]
+\ProvidesPackage{pst-plot}[2021/09/23 package wrapper for pst-plot.tex (hv)]
\input{pst-plot.tex}
\ProvidesFile{pst-plot.tex}
[\filedate\space \fileversion\space `pst-plot' (tvz,hv)]
More information about the tex-live-commits
mailing list.