diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgfplots/pgfplots.scaling.code.tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/pgfplots/pgfplots.scaling.code.tex | 101 |
1 files changed, 54 insertions, 47 deletions
diff --git a/Master/texmf-dist/tex/generic/pgfplots/pgfplots.scaling.code.tex b/Master/texmf-dist/tex/generic/pgfplots/pgfplots.scaling.code.tex index a1b51498005..d2e76769a3a 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/pgfplots.scaling.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/pgfplots.scaling.code.tex @@ -3250,59 +3250,66 @@ % - and copy its data scaling to all other axes. If one of the % axes is log, that one overrules it and all data scaling % effects are disabled.. - \begingroup - \let\pgfplots@data@scale@trafo@EXPONENT@common=\pgfutil@empty - \def\pgfplots@data@scale@trafo@EXPONENT@common@arg{-}% this should not match anything in this context. - \pgfplots@if{pgfplots@apply@datatrafo@x}{% - }{% - \def\pgfplots@data@scale@trafo@EXPONENT@common{{0}{0}}% disable scaling! - }% - \pgfplots@if{pgfplots@apply@datatrafo@y}{% - }{% - \def\pgfplots@data@scale@trafo@EXPONENT@common{{0}{0}}% disable scaling! - }% - \ifpgfplots@threedim - \pgfplots@if{pgfplots@apply@datatrafo@z}{% + \ifpgfplots@disabledatascaling + \def\pgfplots@loc@TMPd##1{% + \pgfplotscoordmath{##1}{datascaletrafo set params}{0}{0}% + }% + \else + \begingroup + \let\pgfplots@data@scale@trafo@EXPONENT@common=\pgfutil@empty + \ifpgfplots@disabledatascaling + \def\pgfplots@data@scale@trafo@EXPONENT@common{{0}{0}}% disable scaling! + \fi + \def\pgfplots@data@scale@trafo@EXPONENT@common@arg{-}% this should not match anything in this context. + \pgfplots@if{pgfplots@apply@datatrafo@x}{% }{% \def\pgfplots@data@scale@trafo@EXPONENT@common{{0}{0}}% disable scaling! }% - \fi - \ifx\pgfplots@data@scale@trafo@EXPONENT@common\pgfutil@empty - % ah - we still need to compute one. ok, search for the - % largest limit. - % - \pgfplots@get@axis@with@largest@limits - \let\pgfplots@data@scale@trafo@EXPONENT@common@arg=\pgfplotsretval + \pgfplots@if{pgfplots@apply@datatrafo@y}{% + }{% + \def\pgfplots@data@scale@trafo@EXPONENT@common{{0}{0}}% disable scaling! + }% + \ifpgfplots@threedim + \pgfplots@if{pgfplots@apply@datatrafo@z}{% + }{% + \def\pgfplots@data@scale@trafo@EXPONENT@common{{0}{0}}% disable scaling! + }% + \fi + \ifx\pgfplots@data@scale@trafo@EXPONENT@common\pgfutil@empty + % ah - we still need to compute one. ok, search for the + % largest limit. + % + \pgfplots@get@axis@with@largest@limits + \let\pgfplots@data@scale@trafo@EXPONENT@common@arg=\pgfplotsretval + % + % ok, compute data scaling transformation for the target axis: + \expandafter\pgfplots@set@optimal@datatrafo@for@\pgfplots@data@scale@trafo@EXPONENT@common@arg% + % + \pgfplotscoordmath{\pgfplots@data@scale@trafo@EXPONENT@common@arg}{datascaletrafo get params}% + \let\pgfplots@data@scale@trafo@EXPONENT@common=\pgfmathresult% + \else + % hm. early-out - we already have the scaling trafo. + % return it. + \fi + \global\let\pgfplots@glob@TMPa=\pgfplots@data@scale@trafo@EXPONENT@common + \global\let\pgfplots@glob@TMPb=\pgfplots@data@scale@trafo@EXPONENT@common@arg + \endgroup % - % ok, compute data scaling transformation for the target axis: - \expandafter\pgfplots@set@optimal@datatrafo@for@\pgfplots@data@scale@trafo@EXPONENT@common@arg% + \xdef\pgfplots@glob@TMPc{\expandafter\pgfutil@firstoftwo\pgfplots@glob@TMPa}% % - \pgfplotscoordmath{\pgfplots@data@scale@trafo@EXPONENT@common@arg}{datascaletrafo get params}% - \let\pgfplots@data@scale@trafo@EXPONENT@common=\pgfmathresult% - \else - % hm. early-out - we already have the scaling trafo. - % return it. + \def\pgfplots@loc@TMPd##1{% + \if ##1\pgfplots@glob@TMPb + % we need to set the scaling trafo for the target direction + % (was lost after \endgroup) + \def\pgfplots@loc@TMPa{\pgfplotscoordmath{##1}{datascaletrafo set params}}% + \expandafter\pgfplots@loc@TMPa\pgfplots@glob@TMPa% + \else + \pgfplotscoordmath{##1}{datascaletrafo set params}{\pgfplots@glob@TMPc}{0}% + \pgfplotscoordmath{##1}{datascaletrafo}{\csname pgfplots@##1min\endcsname}% + \pgfplotscoordmath{##1}{datascaletrafo set params}{\pgfplots@glob@TMPc}{\pgfmathresult}% + \fi + }% \fi - \global\let\pgfplots@glob@TMPa=\pgfplots@data@scale@trafo@EXPONENT@common - \global\let\pgfplots@glob@TMPb=\pgfplots@data@scale@trafo@EXPONENT@common@arg - \endgroup - % - \xdef\pgfplots@glob@TMPc{\expandafter\pgfutil@firstoftwo\pgfplots@glob@TMPa}% -%\message{using datascaletrafo of axis '\pgfplots@glob@TMPb' for each axis.^^J}% - % - \def\pgfplots@loc@TMPd##1{% - \if ##1\pgfplots@glob@TMPb - % we need to set the scaling trafo for the target direction - % (was lost after \endgroup) - \def\pgfplots@loc@TMPa{\pgfplotscoordmath{##1}{datascaletrafo set params}}% - \expandafter\pgfplots@loc@TMPa\pgfplots@glob@TMPa% - \else - \pgfplotscoordmath{##1}{datascaletrafo set params}{\pgfplots@glob@TMPc}{0}% - \pgfplotscoordmath{##1}{datascaletrafo}{\csname pgfplots@##1min\endcsname}% -%\message{Initialising the data scale transformation in direction ##1 to 10^\pgfplots@glob@TMPc*##1 - \pgfmathresult...^^J}% - \pgfplotscoordmath{##1}{datascaletrafo set params}{\pgfplots@glob@TMPc}{\pgfmathresult}% - \fi - }% \pgfplots@loc@TMPd x% \pgfplots@loc@TMPd y% \ifpgfplots@threedim |