summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/generic/pstricks-add/Changes7
-rw-r--r--Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.pdfbin2044104 -> 2127836 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.tex178
-rw-r--r--Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex110
4 files changed, 213 insertions, 82 deletions
diff --git a/Master/texmf-dist/doc/generic/pstricks-add/Changes b/Master/texmf-dist/doc/generic/pstricks-add/Changes
index d39f665c68b..9b52ca56881 100644
--- a/Master/texmf-dist/doc/generic/pstricks-add/Changes
+++ b/Master/texmf-dist/doc/generic/pstricks-add/Changes
@@ -1,4 +1,4 @@
-%% $Id: Changes 112 2009-04-17 19:21:56Z herbert $
+%% $Id: Changes 114 2009-04-24 19:25:37Z herbert $
%%
pstricks-add.pro -----------
v 0.22 2009-03-17 - add LineByHand stuff
@@ -36,6 +36,11 @@ pstricks-add.sty ----------- (hv)
pstricks-add.tex ----------- (Dominik Rodriguez/hv)
+ v 3.31 2009-04-24 - added \pstFPDiv for division int(#1=#2/#3)
+ - added axes style "polar" \psaxes[axesstyle=polar](5,5)
+ - fix trailing space with yAxisLabel
+ - added option decimalSeparator to allow special symbols
+ for persian language
v 3.30 2009-04-17 - rewrote unit calculation for \psgraph. It uses now the
package pst-fp, which has the division macro (stolen
from the fp package)
diff --git a/Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.pdf b/Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.pdf
index 8689eb79e57..954c14cf845 100644
--- a/Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.pdf
+++ b/Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.tex b/Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.tex
index cd13e8fcf5a..b1408858a32 100644
--- a/Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.tex
+++ b/Master/texmf-dist/doc/generic/pstricks-add/pstricks-add-doc.tex
@@ -1,4 +1,4 @@
-%% $Id: pstricks-add-doc.tex 112 2009-04-17 19:21:56Z herbert $
+%% $Id: pstricks-add-doc.tex 115 2009-04-29 08:19:40Z herbert $
\documentclass[11pt,english,BCOR10mm,DIV12,bibliography=totoc,parskip=false,smallheadings
headexclude,footexclude,oneside]{pst-doc}
\listfiles
@@ -10,6 +10,7 @@
\usepackage{pstricks-add}
\usepackage{pifont}
\let\pstricksaddFV\fileversion
+\let\belowcaptionskip\abovecaptionskip
%
\newcommand{\pstEllipse}[5][]{%
\psset{#1}
@@ -308,7 +309,6 @@ throughout, e.g. \verb+\let\modulo\pst@mod+.
%--------------------------------------------------------------------------------------
\subsection{\nxLcs{pst@absdim}}
%--------------------------------------------------------------------------------------
-
\begin{BDef}
\Lcs{pst@absdim}\Largb{dimension}\Largb{result as a dimension register}
\end{BDef}
@@ -322,6 +322,35 @@ throughout, e.g. \verb+\let\modulo\pst@mod+.
\end{LTXexample}
%--------------------------------------------------------------------------------------
+\subsection{\nxLcs{pst@int}}
+%--------------------------------------------------------------------------------------
+\begin{BDef}
+\Lcs{pst@int}\Largb{number}\Largb{result as a truncated integer}
+\end{BDef}
+
+\begin{LTXexample}[width=2cm]
+\makeatletter
+\pst@int{-34.0}\\
+\pst@int{234.123}
+\makeatother
+\end{LTXexample}
+
+%--------------------------------------------------------------------------------------
+\subsection{\nxLcs{pstFPDiv}}
+%--------------------------------------------------------------------------------------
+\begin{BDef}
+\Lcs{pstFPDiv}\Largb{result as a truncated integer}\Largb{number}\Largb{number}
+\end{BDef}
+
+\begin{LTXexample}[width=2cm]
+\makeatletter
+\pstFPDiv\Result{-3.405}{0.02345} \Result\\
+\pstFPDiv\Result{0.02345}{-3.405} \Result\\
+\pstFPDiv\Result{234.123}{33} \Result
+\makeatother
+\end{LTXexample}
+
+%--------------------------------------------------------------------------------------
\subsection{\nxLcs{psGetSlope}}
%--------------------------------------------------------------------------------------
@@ -336,6 +365,7 @@ throughout, e.g. \verb+\let\modulo\pst@mod+.
\psGetSlope(-2111,-12)(3,1)\SlopeVal \SlopeVal
\end{LTXexample}
+\clearpage
%--------------------------------------------------------------------------------------
\section{Dashed Lines}
%--------------------------------------------------------------------------------------
@@ -2678,7 +2708,7 @@ additional \PS commands into the code. This makes the use of \Lcs{pstVerb} in mo
-\section{ New options}
+\section{New or extended options}
%--------------------------------------------------------------------------------------
The axes macro has now two additional optional arguments for placing labels at
@@ -2696,8 +2726,8 @@ is possible. The following examples show how it can be used.
The option \Lkeyset{tickstyle=full}|\Lkeyval{top}|\Lkeyval{bottom} no longer works in the
usual way. Only the additional value \Lkeyval{inner} is valid for
\LPack{pstricks-add}, because everything can be set by the
-\verb+ticksize+ option. When using the \Lkeyword{comma} or
-\verb+trigLabels+ option, the macros \Lcs{pshlabel} and
+\Lkeyword{ticksize} option. When using the \Lkeyword{comma} or
+\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
@@ -2720,19 +2750,21 @@ redefinition, then do it for \Lcs{pst@@hlabel} and
\endfirsthead
\rowcolor{white}\textrm{\bfseries Name} & \textrm{\bfseries Type} & \textrm{\bfseries Default}\\\hline
\endhead
-\Lkeyword{labels} & <\Lkeyval{all}|\Lkeyval{x}|\Lkeyval{y}|\Lkeyval{none}> & all\\%ok
+\Lkeyword{axesstyle} & <\Lkeyval{none}|\Lkeyval{axes}|\Lkeyval{frame}|\Lkeyval{polar}> & axes\\
+\Lkeyword{labels} & <\Lkeyval{all}|\Lkeyval{x}|\Lkeyval{y}|\Lkeyval{none}> & all\\%ok
\Lkeyword{xlabelPos} & <\Lkeyval{bottom},\Lkeyval{axis},\Lkeyval{top}>& \Lkeyval{bottom}\\
\Lkeyword{ylabelPos} & <\Lkeyval{left},\Lkeyval{axis},\Lkeyval{right}>& left\\
-\Lkeyword{xlabelFactor} & <anything> & \{\textbackslash\@ empty\}\\
-\Lkeyword{ylabelFactor} & <anything> & \{\textbackslash\@ empty\}\\
-\Lkeyword{labelFontSize} & <fontsize macro> & \{\} \\
-\Lkeyword{trigLabels} & false|true & false\\
-\Lkeyword{trigLabelBase} & <number> & 0\\
-\Lkeyword{algebraic} & false|true & false\\ %ok
-\Lkeyword{comma} & false|true & false\\ %ok
-\Lkeyword{xAxis} & false|true & true\\%ok
-\Lkeyword{yAxis} & false|true & true\\%ok
-\Lkeyword{xyAxes} & false|true & true\\%ok
+\Lkeyword{xlabelFactor} & <anything> & \{\textbackslash\@ empty\}\\
+\Lkeyword{ylabelFactor} & <anything> & \{\textbackslash\@ empty\}\\
+\Lkeyword{labelFontSize} & <fontsize macro> & \{\} \\
+\Lkeyword{trigLabels} & false|true & false\\
+\Lkeyword{trigLabelBase} & <number> & 0\\
+\Lkeyword{algebraic} & false|true & false\\ %ok
+\Lkeyword{decimalSeparator} & <character> & .\\ %ok
+\Lkeyword{comma} & false|true & false\\ %ok
+\Lkeyword{xAxis} & false|true & true\\%ok
+\Lkeyword{yAxis} & false|true & true\\%ok
+\Lkeyword{xyAxes} & false|true & true\\%ok
\Lkeyword{xDecimals} & <number> or empty & \{\}\\%ok
\Lkeyword{yDecimals} & <number> or empty & \{\}\\%ok
\Lkeyword{xyDecimals} & <number> or empty & \{\}\\%ok
@@ -2781,7 +2813,7 @@ redefinition, then do it for \Lcs{pst@@hlabel} and
\Lkeyword{lly} & <length> & 0pt\\
\Lkeyword{urx} & <length> & 0pt\\
\Lkeyword{ury} & <length> & 0pt\\
-\Lkeyword{polarplot} & false|true & false\\
+\Lkeyword{polarplot} & false|true & false\\
\Lkeyword{ChangeOrder} & false|true & false\\
\end{longtable}
}
@@ -2790,6 +2822,48 @@ redefinition, then do it for \Lcs{pst@@hlabel} and
\clearpage
%--------------------------------------------------------------------------------------
+\subsection{\nxLkeyword{axesstyle}}
+%--------------------------------------------------------------------------------------
+There is a new axes style \Lkeyval{polar} which plots a polar coordinate system.
+
+Syntax:
+\begin{lstlisting}[style=syntax]
+\psplot[axesstyle=polar](Rx,Ry)
+\psplot[axesstyle=polar](...)(Rx,Ry)
+\psplot[axesstyle=polar](...)(...)(Rx,Ry)
+\end{lstlisting}
+
+Important is the fact, that only one pair of coordinates is taken into account for
+the radius. It is \emph{always} the last pair in a sequence of allowed coordinates
+for the \Lcs{psaxes} macro. The other ones are ignored; they are not valid for the
+polar coordinate system.
+
+\resetOptions%
+\begin{LTXexample}[wide=true,pos=t]
+%\usepackage{pstricks-add}
+
+\begin{pspicture}(-3.5,-3.5)(3.5,3.5)
+\psaxes[axesstyle=polar](3,3)
+\psplot[polarplot,algebraic,linecolor=blue,linewidth=2pt,
+ plotpoints=2000]{0}{TwoPi 4 mul}{2*(sin(x)-x)/(cos(x)+x)}
+\end{pspicture}
+%
+\begin{pspicture}(-3.5,-3.5)(3.5,3.5)
+\psaxes[axesstyle=polar,subticklinestyle=dashed,subticks=2,
+ labelFontSize=\scriptstyle](3,3)
+\psplot[polarplot,algebraic,linecolor=red,linewidth=2pt,
+ plotpoints=2000]{0}{TwoPi}{6*sin(x)*cos(x)}
+\end{pspicture}
+\end{LTXexample}
+
+All valid optional arguments for the axes are also possible for the polar style, if they make sense \ldots\ :-)
+Important are the \Lkeyword{Dy} option, it defines the angle interval and \Lkeyword{subticks}, for
+the intermediate circles and lines. The number can be different for the circles (\Lkeyword{ysubticks}) and the
+lines (\Lkeyword{xsubticks}).
+
+\clearpage
+
+%--------------------------------------------------------------------------------------
\subsection{\texttt{xyAxes}, \texttt{xAxis} and \texttt{yAxis}}
%--------------------------------------------------------------------------------------
Syntax:
@@ -2981,14 +3055,18 @@ it must be set in math mode when using math operators!
%--------------------------------------------------------------------------------------
-\subsection{\texttt{comma}}
+\subsection{\nxLkeyword{decimalSeparator} and \nxLkeyword{comma}}
%--------------------------------------------------------------------------------------
Syntax:
\begin{lstlisting}[style=syntax]
comma=false|true
+decimalSeparator=<charactor>
\end{lstlisting}
-Setting this option to true gives labels with a comma as a decimal separator instead
-of the dot. \Lkeyword{comma} and \verb|comma=true| is the same.
+Setting the option \Lkeyword{comma} to true gives labels with a comma as a decimal separator instead
+of the dot. \Lkeyword{comma} and \verb|comma=true| is the same. The optional argument
+\Lkeyword{decimalSeparator} allows an individual setting for languages with a different
+character than a dot or a comma. The character has to set into braces, if it is an
+active, e.\,g. \Lkeyword{decimalSeparator}=\Largb{,}.
\resetOptions
\medskip
@@ -4807,7 +4885,8 @@ in polar mode:
\end{BDef}
The equation in PostScript code is interpreted as a function $r=f(\alpha)$, e.g. for the
-circle with radius 1 as $r=\sqrt{\sin^2x+\cos^2x}$:
+circle with radius 1 as $r=\sqrt{\sin^2x+\cos^2x}$, or $r=a*\dfrac{sin(x)*cos(x)}{(sin(x)^3+cos(x)^3)}$
+for the following examples:
\begin{lstlisting}[style=syntax]
x sin dup mul x cos dup mul add sqrt
@@ -4815,34 +4894,45 @@ x sin dup mul x cos dup mul add sqrt
\medskip
-\begin{LTXexample}[width=6cm]
\resetOptions
+\begin{LTXexample}[pos=t]
\psset{plotpoints=200,unit=0.75}
-\begin{pspicture}*(-5,-5)(3,3)
- \psaxes[arrowlength=1.75,ticksize=2pt,%
- labelFontSize=\scriptstyle,%
- linewidth=0.17mm]{->}(0,0)(-4.99,-4.99)(3,3)
- \rput[Br](3,-.35){$x$}
- \rput[tr](-.15,3){$y$}
- \rput[Br](-.15,-.35){$0$}
- \psset{linewidth=.35mm,polarplot=true}
+\begin{pspicture*}(-5,-5)(5.1,5.1)
+ \psaxes[arrowlength=1.75,ticksize=2pt,labelFontSize=\scriptstyle,
+ linewidth=0.2mm]{->}(0,0)(-4.99,-4.99)(5,5)[x,-90][y,180]
+ \rput[Br](-.15,-.35){$0$} \psset{linewidth=.35mm,polarplot}
\psplot[linecolor=red]{140}{310}{3 neg x sin mul x cos mul x sin 3 exp x cos 3 exp add div}
- \psplot[linecolor=cyan]{140}{310}{6 neg x sin mul x cos mul x sin 3 exp x cos 3 exp add div}
- \psplot[linecolor=blue]{140}{310}{9 neg x sin mul x cos mul x sin 3 exp x cos 3 exp add div}
-\end{pspicture}
+ \psplot[linecolor=cyan]{140}{310}{6 x sin mul x cos mul x sin 3 exp x cos 3 exp add div}
+ \psplot[linecolor=blue,algebraic]{2.44}{5.41}{-8*sin(x)*cos(x)/(sin(x)^3+cos(x)^3)}
+\end{pspicture*}
\end{LTXexample}
\medskip
-\begin{LTXexample}[width=5cm]
\resetOptions
+\begin{LTXexample}[pos=t]
+\psset{unit=0.5cm}
+\begin{pspicture}(-6,-6)(6,6)
+\psaxes[axesstyle=polar,labelFontSize=\scriptstyle,linewidth=0.2mm]{->}(6,6)
+\psset{linewidth=3pt,polarplot,plotpoints=500,plotstyle=curve}
+\psclip{\pscircle[linestyle=none]{6}}
+ \psplot[linecolor=red]{140}{310}{3 neg x sin mul x cos mul x sin 3 exp x cos 3 exp add div}
+ \psplot[linecolor=cyan]{140}{310}{6 x sin mul x cos mul x sin 3 exp x cos 3 exp add div}
+ \psplot[linecolor=blue,algebraic]{2.44}{5.41}{-8*sin(x)*cos(x)/(sin(x)^3+cos(x)^3)}
+\endpsclip
+\end{pspicture}
+\end{LTXexample}
+
+
+\medskip
+\resetOptions
+\begin{LTXexample}[width=5cm]
\psset{plotpoints=200,unit=1}
\begin{pspicture}(-2.5,-2.5)(2.5,2.5)% Ulrich Dirr
\psaxes[arrowlength=1.75,%
- ticksize=2pt,linewidth=0.17mm]{->}(0,0)(-2.5,-2.5)(2.5,2.5)
- \rput[Br](2.5,-.35){$x$}
- \rput[tr](-.15,2.5){$y$}
+ ticksize=2pt,linewidth=0.17mm]{->}%
+ (0,0)(-2.5,-2.5)(2.5,2.5)[$x$,-90][$y$,180]
\rput[Br](-.15,-.35){$0$}
\psset{linewidth=.35mm,plotstyle=curve,polarplot=true}
\psplot[linecolor=red]{0}{360}{x cos 2 mul x sin mul}
@@ -7513,10 +7603,12 @@ This refers to all options of the packages \LPack{pstricks},
\newlength{\Li}\settowidth{\Li}{Function}
\begin{table}[htbp]
- \begin{center}{\ttfamily
- \begin{tabular}{|l|r@{ $\rightarrow$ }l|}\hline
- \multirow{2}{\Li}{\normalfont Function}&\multicolumn{2}{c|}{\normalfont Meaning}\\
- &\normalfont on stack before & \normalfont after\\\hline
+\caption{Some primitive PostScript macros}\label{tab:primpost}
+\centering
+\ttfamily
+ \begin{tabular}{@{} l | r@{ $\rightarrow$ } l @{}}\hline
+ \multirow{2}{\Li}{\normalfont\emph{Function}} & \multicolumn{2}{ c }{\normalfont\emph{Meaning}}\\
+ &\normalfont\emph{on stack before} & \normalfont\emph{after}\\\hline
\Lps{add} & $x\quad y$&$x+y$\\
\Lps{sub} & $x\quad y$&$x-y$\\
\Lps{mul} & $x\quad y$&$x\times y$\\
@@ -7536,9 +7628,7 @@ This refers to all options of the packages \LPack{pstricks},
\Lps{pop} & $x$ & --\\
\Lps{dup} & $x$ & $x\quad x$ \\\hline
% \Lps{roll} & $x_1\quad x_2\quad \cdots\quad x_n\quad n p$ &\\\hline
- \end{tabular}}
- \caption{Some primitive PostScript macros}\label{tab:primpost}
- \end{center}
+ \end{tabular}
\end{table}
diff --git a/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex b/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex
index 145b576a517..3fc77bf7dea 100644
--- a/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex
+++ b/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex
@@ -1,4 +1,4 @@
-%% $Id: pstricks-add.tex 112 2009-04-17 19:21:56Z herbert $
+%% $Id: pstricks-add.tex 115 2009-04-29 08:19:40Z herbert $
%%
%%
%% This is file `pstricks-add.tex',
@@ -30,8 +30,8 @@
\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi
\ifx\PSTFPloaded\endinput\else \input pst-fp \fi
%
-\def\fileversion{3.30}
-\def\filedate{2009/04/17}
+\def\fileversion{3.31}
+\def\filedate{2009/04/29}
\message{`pstricks-add' v\fileversion, \filedate\space (dr,hv)}
%
\edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax
@@ -171,6 +171,9 @@
\def\pst@int#1{\expandafter\pst@@int#1..\@nil}
\def\pst@@int#1.#2.\@nil{#1}
%
+\def\pstFPDiv#1#2#3{\pstFP@callc\pstFP@div#1{#2}{#3}% % #1 := int(#2/#3)
+ \edef#1{\pst@int{#1}}}%
+%
\def\psGetSlope(#1,#2)(#3,#4)#5{% 4 values without a dimen! #5 is a macro
\pst@dimm=#1pt%
\advance\pst@dimm by -#3pt%
@@ -1508,12 +1511,14 @@
\fi}
%\psset{labelFontSize={},mathLabel}
%
-\define@boolkey[psset]{pstricks-add}[Pst@]{comma}[true]{}
+\define@key[psset]{pstricks-add}{decimalSeparator}[.]{\def\psk@decimalSeparator{#1}}%
+\define@boolkey[psset]{pstricks-add}[Pst@]{comma}[true]{%
+ \ifPst@comma\def\psk@decimalSeparator{,}\else\def\psk@decimalSeparator{.}\fi}
\define@boolkey[psset]{pstricks-add}[Pst@]{xAxis}[true]{}
\define@boolkey[psset]{pstricks-add}[Pst@]{yAxis}[true]{}
\define@boolkey[psset]{pstricks-add}[Pst@]{xyAxes}[true]{%
\@nameuse{Pst@xAxis#1}\@nameuse{Pst@yAxis#1}}%
-%\psset{xyAxes=true}%
+%\psset{decimalSeparator=.}%
%
\define@key[psset]{pstricks-add}{xlabelPos}[b]{\pst@expandafter\psset@@xlabelPos{#1}\@nil}
\define@key[psset]{pstricks-add}{ylabelPos}[l]{\pst@expandafter\psset@@ylabelPos{#1}\@nil}
@@ -1680,8 +1685,9 @@
\addbefore@par{arrows=-,linewidth=\psk@xtickwidth\pslinewidth}
\use@par
\psline(#1,\pst@xticksizeB)(#1,\pst@xticksizeA)
- \rput[t](! #1 \pst@number\pslabelsep \pst@number\pst@xticksizeB add
- \pst@number\psyunit div neg ){\pshlabel{#2\vphantom{1}}}}\ignorespaces}
+ \rput[t](! \psk@origin
+ #1 \pst@number\pslabelsep \pst@number\pst@xticksizeB add
+ \pst@number\psyunit div neg ){\pshlabel{#2\vphantom{1}}}}\ignorespaces}
%
%% #1 : optional arguments passed to psline
%% #2 : y value
@@ -1692,8 +1698,9 @@
\addbefore@par{arrows=-,linewidth=\psk@ytickwidth\pslinewidth}
\use@par
\psline(\pst@yticksizeB,#1)(\pst@yticksizeA,#1)
- \rput[r]{0}(!\pst@number\pst@yticksizeB \pst@number\pslabelsep add
- \pst@number\psxunit div neg #1){\psvlabel{#2}}}\ignorespaces}
+ \rput[r]{0}(! \psk@origin
+ \pst@number\pst@yticksizeB \pst@number\pslabelsep add
+ \pst@number\psxunit div neg #1){\psvlabel{#2}}}\ignorespaces}
%
%% #1 integer
%% #2 decimals
@@ -1739,13 +1746,10 @@
\ifx\@xyDecimals\@empty% take value as is
\def\@tempa{#1}% write only if not empty
\ifx\@tempa\@empty% write nothing
- \else
- \ifPst@comma{,}\else.\fi%
- #1%
- \fi%
+ \else\psk@decimalSeparator#1\fi%
\else% write only \xy@decimals
\ifnum\@xyDecimals>\@zero
- \ifPst@comma{,}\else.\fi
+ \psk@decimalSeparator%
\@Reset@digitcounter
\expandafter\@process@digits#1*;
\fi%
@@ -1765,6 +1769,7 @@
\let\psk@arrowB\@empty%
\psxs@axes}
%
+%
\def\psxs@axes{{%
\ifPst@xAxis\psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{}{x}\fi%
\ifPst@yAxis\psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{exch}{y}\fi}}
@@ -1808,7 +1813,7 @@
\advance\pst@dimc by -\pst@dimg% Dist. from ur-x to o-x
\advance\pst@dimd by -\pst@dimh% Dist. from ur-y to o-y
% Make lines/arrows or frame:
- \@nameuse{psxs@\psk@axesstyle}% \psxs@axes or \psxs@frame
+ \@nameuse{psxs@\psk@axesstyle}% \psxs@axes or \psxs@frame or \psxs@polar
\ifPst@yAxis%
\begingroup%
\ifdim\pst@dima=\z@\else\showoriginfalse\fi%
@@ -2246,6 +2251,36 @@
\fi%
}
%
+\def\psxs@polar{% (rx,ry) % all other values are ignored
+ \pst@killglue
+ \begingroup
+ \edef\pst@dimC{\strip@pt\pst@dimc}% RadiusX
+ \pstFPDiv\pstR@dius{\pst@dimC}{\strip@pt\psxunit}% in cm and as int
+ \addbefore@par{Dy=30}% for the angle step
+ \use@keep@par
+ \pstFPDiv\pstN@lpha{360}{\psk@Dy}% No of (int) main lines
+ \pstFPdiv\pstd@lpha{\psk@Dy}{\psk@ysubticks}% sub dAlpha
+ \pstFPdiv\pstdR@dius{1}{\psk@xsubticks}% sub dRadius
+ \pst@cntm=\psk@xsubticks\advance\pst@cntm by \m@ne
+ \multido{\iA=\psk@Dx+\psk@Dx,\rB=\pstdR@dius+\psk@Dx,\iB=0+1}{\pstR@dius}{%
+ \multido{\rA=\rB+\pstdR@dius}{\the\pst@cntm}{\pscircle[linestyle=\psxsubticklinestyle,
+ linecolor=\psk@xsubtickcolor,linewidth=\psk@xsubtickwidth pt]{\rA}}
+ \pscircle[linestyle=\psxticklinestyle,linecolor=\psk@xtickcolor,
+ linewidth=\psk@xtickwidth pt]{\iA}%
+ \uput[-45](\iB,0){\pshlabel{\iB}}\uput[45](0,\iB){\pshlabel{\iB}}%
+ }%
+% \uput[-45](\pstR@dius,0){\pstR@dius}\uput[45](0,\pstR@dius){\pstR@dius}%
+ \pst@cntm=\psk@ysubticks\advance\pst@cntm by \m@ne
+ \multido{\iA=\psk@Dy+\psk@Dy,\rB=\pstd@lpha+\psk@Dy}{\pstN@lpha}{%
+ \multido{\rA=\rB+\pstd@lpha}{\the\pst@cntm}{\psline[linestyle=\psysubticklinestyle,
+ linecolor=\psk@ysubtickcolor,linewidth=\psk@ysubtickwidth pt](\pstR@dius;\rA)}
+ \psline[linestyle=\psyticklinestyle,
+ linecolor=\psk@ytickcolor,linewidth=\psk@ytickwidth pt](\pstR@dius;\iA)%
+ \uput[\iA](\pstR@dius;\iA){\psvlabel{\iA}}}
+ \endgroup\ignorespaces%
+ \Pst@xAxisfalse\Pst@yAxisfalse%
+}
+
% #1:Max/Min in pt from origin; #2:arrow; #3:min; #4:max
\def\pst@hlabels#1#2#3#4{%
\ifdim#1=\z@\else% % start from 0 ?
@@ -2469,11 +2504,11 @@
\iffalse
\define@key[psset]{pstricks-add}{xAxisLabelPos}{%
\def\pst@tempA{#1}%
- \ifx\pst@tempA\@empty\let\psk@xAxisLabelPos\relax\else
+ \ifx\pst@tempA\@empty\let\psk@xAxisLabelPos\relax\else%
\pst@getcoor{#1}\psk@xAxisLabelPos\fi}
\define@key[psset]{pstricks-add}{yAxisLabelPos}{%
\def\pst@tempA{#1}%
- \ifx\pst@tempA\@empty\let\psk@yAxisLabelPos\relax\else
+ \ifx\pst@tempA\@empty\let\psk@yAxisLabelPos\relax\else%
\pst@getcoor{#1}\psk@yAxisLabelPos\fi}
\fi
\define@key[psset]{pstricks-add}{xAxisLabelPos}[{}]{\def\psk@xAxisLabelPos{#1}}
@@ -2516,7 +2551,7 @@
\advance\pst@dimo by \pst@dimp% delta y
\ifx!#6\pst@dimm=\pst@@dx\pst@dimo\else\pst@dimm=#6\fi%
\pstFPdiv\pst@@dy{\strip@pt\pst@dimm}{\strip@pt\pst@dimo}%
- \pst@yunit=\pst@@dy\p@
+ \pst@yunit=\pst@@dy\p@%
%
\pst@dimm=#1\pst@xunit%
\advance\pst@dimm by \psk@llx%
@@ -2543,7 +2578,7 @@
\advance\pst@dimo by \pst@dimp% delta x
\pst@dimm=#7%
\pstFPdiv\pst@@dx{\strip@pt\pst@dimm}{\strip@pt\pst@dimo}%
- \pst@xunit=\pst@@dx\p@
+ \pst@xunit=\pst@@dx\p@%
%
\pst@dimo=#6\p@\pst@dimp=#4\p@\multiply\pst@dimp by \m@ne%
\advance\pst@dimo by \pst@dimp% delta y
@@ -2566,33 +2601,33 @@
}
%
\def\setxLabelC@@r#1,#2(#3,#4)(#5){%
- \pst@getcoor{#5}\pst@tempB
- \ifx#1c
- \pssetylength\pst@dimm{#2}
+ \pst@getcoor{#5}\pst@tempB%
+ \ifx c#1
+ \pssetylength\pst@dimm{#2}%
\rput(! #4 #3 add 2 div \pst@number\pst@dimm \pst@tempB\space exch pop add
- \pst@number\psyunit div ){\psk@xAxisLabel}
- \else
- \pst@getcoor{\psk@xAxisLabelPos}\pst@tempA
- \rput(! \pst@tempA\space \pst@tempB\space exch pop add \tx@UserCoor ){\psk@xAxisLabel}
+ \pst@number\psyunit div ){\psk@xAxisLabel}%
+ \else%
+ \pst@getcoor{\psk@xAxisLabelPos}\pst@tempA%
+ \rput(! \pst@tempA\space \pst@tempB\space exch pop add \tx@UserCoor ){\psk@xAxisLabel}%
\fi}
\def\setyLabelC@@r#1,#2(#3,#4)(#5){%
- \pst@getcoor{#5}\pst@tempB
- \ifx#2c
- \pssetxlength\pst@dimm{#1}
- \rput{90}(! \pst@number\pst@dimm \pst@tempB\space pop add
- \pst@number\psxunit div #4 #3 add 2 div ){\psk@yAxisLabel}
- \else
- \pst@getcoor{\psk@yAxisLabelPos}\pst@tempA
- \rput{90}(! \pst@tempB\space pop \pst@tempA\space 3 1 roll add exch \tx@UserCoor ){\psk@yAxisLabel}
- \fi}
+ \pst@getcoor{#5}\pst@tempB%
+ \ifx c#2
+ \pssetxlength\pst@dimm{#1}%
+ \rput{90}(! \pst@number\pst@dimm \pst@tempB\space pop add \pst@number\psxunit div #4 #3 add 2 div ){\psk@yAxisLabel}%
+ \else%
+ \pst@getcoor{\psk@yAxisLabelPos}\pst@tempA%
+ \rput{90}(! \pst@tempB\space pop \pst@tempA\space 3 1 roll add exch \tx@UserCoor ){\psk@yAxisLabel}%
+ \fi
+}
%
\def\psgraph@vi(#1,#2)(#3,#4)(#5,#6){%
\ifx\psk@xAxisLabel\@empty\else%
- \ifx\psk@xAxisLabelPos\@empty \uput[0](#5,#2){\psk@xAxisLabel}%
+ \ifx\psk@xAxisLabelPos\@empty\uput[0](#5,#2){\psk@xAxisLabel}%
\else \expandafter\setxLabelC@@r\psk@xAxisLabelPos(#3,#5)(#1,#2)\fi%
\fi%
\ifx\psk@yAxisLabel\@empty\else%
- \ifx\psk@yAxisLabelPos\@empty \uput[90](#1,#6){\psk@yAxisLabel}%
+ \ifx\psk@yAxisLabelPos\@empty\uput[90](#1,#6){\psk@yAxisLabel}%
\else\expandafter\setyLabelC@@r\psk@yAxisLabelPos(#4,#6)(#1,#2)\fi%
\fi%
\ignorespaces%
@@ -3961,6 +3996,7 @@
ignoreLines=0,
nStep=1,nStart=0,nEnd={},
xStep=0,yStep=0,xStart={},xEnd={},yStart={},yEnd={},comma=false,
+ decimalSeparator=.,
plotNo=1,plotNoMax=1,
xAxisLabel=x,yAxisLabel=y,
yAxisLabelPos={},xAxisLabelPos={},