diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex | 558 |
1 files changed, 332 insertions, 226 deletions
diff --git a/Master/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex b/Master/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex index 26c80cbe799..28783b3ab5d 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex @@ -4,7 +4,7 @@ % % Provides a user-friendly interface to create function plots (normal % plots, semi-logplots and double-logplots). -% +% % It is based on Till Tantau's PGF package. % % Copyright 2007-2013 by Christian Feuersänger. @@ -13,12 +13,12 @@ % it under the terms of the GNU General Public License as published by % the Free Software Foundation, either version 3 of the License, or % (at your option) any later version. -% +% % This program is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. -% +% % You should have received a copy of the GNU General Public License % along with this program. If not, see <http://www.gnu.org/licenses/>. % @@ -44,7 +44,6 @@ \input pgfplots.paths.code.tex - \usetikzlibrary{decorations,decorations.pathmorphing,decorations.pathreplacing} % FIXME: reduce number of variables! @@ -74,7 +73,10 @@ \newif\ifpgfplots@warn@for@filter@discards \newif\ifpgfplots@isuniformtick \newif\ifpgfplotsplothandlermesh@patch@type@sampling -\newif\ifpgfplots@clip@limits +\newif\ifpgfplots@clip@limits@compatmode +\newif\ifpgfplots@clip@limits@x +\newif\ifpgfplots@clip@limits@y +\newif\ifpgfplots@clip@limits@z \newif\ifpgfplots@clip \newif\ifpgfplots@plot@coords@mathparser \pgfplots@plot@coords@mathparsertrue @@ -135,6 +137,7 @@ \newif\ifpgfplots@has@cell@picture \newif\ifpgfplots@substitute@pgfpoint \newif\ifpgfplots@LUA@backend@supported +\newif\ifpgfplots@threedim@log@sampling \newif\ifpgfplots@collect@firstplot@astick \newif\ifpgfplots@units@use @@ -164,7 +167,7 @@ \def\pgfplots@label@upgrade@warning{% \ifpgfplots@threedim - \pgfplotswarning{center lines upgrade required}\pgfeov% + \pgfplotswarning{center lines upgrade required}\pgfeov% \global\let\pgfplots@label@upgrade@warning=\relax \fi }% @@ -217,7 +220,7 @@ % \pgfplotswarning{cycle list size limit reached}\pgfeov % \breakforeach % \fi - %-------------------------------------------------- + %-------------------------------------------------- % \pgfutil@ifnextchar\pgfplots@EOI{% \pgfplots@gobble@until@EOI @@ -319,9 +322,9 @@ \begingroup \edef\pgfkeyscurrentkey{#1}% \pgfkeyssplitpath - \pgfplots@warning{Loading deprecated style option - \pgfkeyscurrentpath/\pgfkeyscurrentname. - Please replace '\string\tikzstyle{\pgfkeyscurrentname}' + \pgfplots@warning{Loading deprecated style option + \pgfkeyscurrentpath/\pgfkeyscurrentname. + Please replace '\string\tikzstyle{\pgfkeyscurrentname}' with '\string\pgfplotsset{\pgfkeyscurrentname/.style={}}' (or '\string\pgfplotsset{\pgfkeyscurrentname/.append style={}}').}% \endgroup @@ -390,7 +393,7 @@ % Does the work for '[xyz]ticklabel pos'. % % #1: the axis (x,y or z). -% #2: the key argument. Accepts +% #2: the key argument. Accepts % 'lower', % 'upper', % 'default' -> depends on 'tick pos' @@ -516,7 +519,7 @@ \def\pgfplots@colormap@catcodemagic{colormap} \pgfplots@command@to@string\pgfplots@colormap@catcodemagic\pgfplots@colormap@catcodemagic -% checks for +% checks for % - <known list> % - [<elements> of]<known list> % POSTCONDITION: @@ -601,7 +604,7 @@ % remove spaces from ##1 and ##2: \pgfkeys@spdef\pgfplots@loc@TMPa{##1}% \pgfkeys@spdef\pgfplots@loc@TMPb{##2}% - % + % % check if the argument is known: \pgfkeysifdefined{/pgfplots/point meta/\pgfplots@loc@TMPa/.@cmd}{% \def\pgfplots@loc@TMPc{% @@ -649,7 +652,7 @@ \edef\pgfplots@color@of@colormap@value{\pgfplots@color@of@colormap@value}% \pgfkeys@spdef\pgfplots@color@of@colormap@name{#2}% } -% defines +% defines % - \pgfmathresult to be the resulting color. % - \pgfplots@color@of@colormap@name the name of the colormap \def\pgfplots@color@of@colormap@define#1{% @@ -783,7 +786,7 @@ \fi }, % 'activate layers=false' is the same as 'set layers=none'. - % However, 'activate layers=true' does not work unless a 'set layers' + % However, 'activate layers=true' does not work unless a 'set layers' % has been installed as well. /pgfplots/activate layers/.is if=pgfplots@layered@graphics, /pgfplots/activate layers/.default=true, @@ -1105,7 +1108,7 @@ /pgfplots/axis type/.belongs to family=/pgfplots/scale, /pgfplots/@expected axis cs/.initial=cart, /pgfplots/every rectangle axis/.style={}, - % + % % see \pgfplotsdefinecstransform{<from>}{<to>}{<code>} /pgfplots/data cs/.initial=cart,% the coordinate system of provided data. Will be transformed to the axis' internal coordinate system (@expected axis cs). % @@ -1186,7 +1189,7 @@ % % this here used to be the default up to (and including) pgfplots 1.13. % But it does not support the following use cases: - % * 'colormap access=const', + % * 'colormap access=const', % * 'colorbar style={ytick=data}}' % * CMYK shadings % -> deprecated. @@ -1352,7 +1355,7 @@ \c@pgf@countd=\pgfplotscolormaplastindexof{\pgfplots@CM}\relax \edef\pgfplots@colorcount{\the\c@pgf@countd}% \advance\c@pgf@countd by-1 % - % XXX : this here is tailored for use with + % XXX : this here is tailored for use with % * 'colormap access=const' and % * 'sample for=const' % where the last color is redundant and must not be @@ -1717,8 +1720,6 @@ /pgfplots/ytick pos/right/.belongs to family=/pgfplots/tick, /pgfplots/ytick pos/both/.code ={\def\pgfplots@ytickposnum{0}}, /pgfplots/ytick pos/both/.belongs to family=/pgfplots/tick, - /pgfplots/ytick pos/top/.style={/pgfplots/ytick pos/right}, - /pgfplots/ytick pos/bottom/.style={/pgfplots/ytick pos/left}, /pgfplots/ytick pos=both, /pgfplots/ztick pos/.is choice, /pgfplots/ztick pos/.belongs to family=/pgfplots/tick, @@ -1728,8 +1729,6 @@ /pgfplots/ztick pos/right/.belongs to family=/pgfplots/tick, /pgfplots/ztick pos/both/.code ={\def\pgfplots@ztickposnum{0}}, /pgfplots/ztick pos/both/.belongs to family=/pgfplots/tick, - /pgfplots/ztick pos/top/.style={/pgfplots/ztick pos/right}, - /pgfplots/ztick pos/bottom/.style={/pgfplots/ztick pos/left}, /pgfplots/ztick pos=both, /pgfplots/tickpos/.style={ /pgfplots/xtick pos={#1}, @@ -1761,11 +1760,11 @@ % This feature is more or less deprecated. % The choice 'auto' should always use 'near ticklabel'. % - % Choices are + % Choices are % 'auto' (value 0), - % 'near ticklabel' (value 1), + % 'near ticklabel' (value 1), % 'tikz' (value 2) - % with values stored in \pgfplots@ticklabel@anchor@[xyz] + % with values stored in \pgfplots@ticklabel@anchor@[xyz] /pgfplots/xticklabel anchor/.code={\pgfplots@setticklabel@anchor@for x{#1}}, /pgfplots/xticklabel anchor/.belongs to family=/pgfplots/tick, /pgfplots/yticklabel anchor/.code={\pgfplots@setticklabel@anchor@for y{#1}}, @@ -2009,22 +2008,22 @@ \draw[% /pgfplots/mesh=false,% % reset bar options. This is to address the strange - % backwards compatibility handling implemented by + % backwards compatibility handling implemented by % \pgfplots@install@local@bar@handlers (see its docs). % This should not hurt at all since 'line legend' is % unsuitable for bar plots anyway. - bar width=3pt,% + bar width=3pt,% bar shift=0pt,% % mark repeat=2,% - mark phase=2,##1] + mark phase=2,##1] plot coordinates { - (0cm,0cm) + (0cm,0cm) (0.3cm,0cm) (0.6cm,0cm)% };% }% - }, + }, /pgfplots/line legend/.style/.code={\pgfplots@error{This style is supposed to be constant.}},% /pgfplots/line legend/.append style/.code={\pgfplots@error{This style is supposed to be constant.}},% /pgfplots/line legend, @@ -2070,10 +2069,26 @@ }% },% /tikz/trim axis right/.style={/pgfplots/trim axis right}, - /pgfplots/clip limits/.is if=pgfplots@clip@limits, - /pgfplots/clip limits/.default=true, + /pgfplots/clip limits compat/.is if=pgfplots@clip@limits@compatmode, + /pgfplots/clip limits if compat/.code={ + \ifpgfplots@clip@limits@compatmode + \else + \pgfkeysalso{#1}% + \fi + }, + /pgfplots/clip xlimits/.is if=pgfplots@clip@limits@x, + /pgfplots/clip xlimits/.default=true, + /pgfplots/clip ylimits/.is if=pgfplots@clip@limits@y, + /pgfplots/clip ylimits/.default=true, + /pgfplots/clip zlimits/.is if=pgfplots@clip@limits@z, + /pgfplots/clip zlimits/.default=true, + /pgfplots/clip limits/.style={ + /pgfplots/clip xlimits={#1},% + /pgfplots/clip ylimits={#1},% + /pgfplots/clip zlimits={#1},% + }, /pgfplots/clip limits=true, - /pgfplots/clip limits/.belongs to family=/pgfplots, + %/pgfplots/clip limits/.belongs to family=/pgfplots, /pgfplots/clip/.is if=pgfplots@clip, /pgfplots/clip/.default=true, /pgfplots/clip=true, @@ -2260,7 +2275,7 @@ \edef\pgfplots@loc@TMPa{#3}% \expandafter\pgfplots@loc@TMPc\pgfplots@loc@TMPa\relax },% - % -> keeps only the nth point, all other ones will get ''. + % -> keeps only the nth point, all other ones will get ''. /pgfplots/each nth point/.style={/pgfplots/each nth point*={x}{#1}},% % #1: the filter name: x, y, z, or something exotic like hist/data % #2: the N of 'each nth' @@ -2300,8 +2315,8 @@ /pgfplots/xfilter/.initial=,% DEPRECATED /pgfplots/yfilter/.initial=,% DEPRECATED /pgfplots/zfilter/.initial=,% DEPRECATED - % interpretation: - % if 'samples at'==empty && 'domain' == empty + % interpretation: + % if 'samples at'==empty && 'domain' == empty % use tikz option processing! % else if 'samples at' == empty % use 'domain' @@ -2319,7 +2334,7 @@ /pgfplots/variable/.code={\pgfkeysalso{/tikz/variable={#1}}}, /pgfplots/variable y/.initial=\y,% /pgfplots/sample dim/.initial=auto, - % and provide aliases in the '/pgfplots/' tree to avoid + % and provide aliases in the '/pgfplots/' tree to avoid % search path problems just for the following options: /pgfplots/name/.code={\pgfkeysalso{/tikz/name={#1}}}, /pgfplots/overlay/.code={\pgfkeysalso{/tikz/overlay={#1}}}, @@ -2328,7 +2343,7 @@ /pgfplots/prefix/.code={\pgfkeysalso{/tikz/prefix={#1}}}, /pgfplots/raw gnuplot/.code={\pgfkeysalso{/tikz/raw gnuplot={#1}}}, /pgfplots/parametric/.code={\pgfkeysalso{/tikz/parametric={#1}}},% - % + % /pgfplots/width/.initial=,% /pgfplots/width/.belongs to family=/pgfplots, /pgfplots/height/.initial=,% @@ -2401,7 +2416,7 @@ /pgfplots/scale uniformly strategy/auto, /pgfplots/scale uniformly warning/.is if=pgfplots@scaleuniformly@warning, /pgfplots/scale uniformly warning=false, - % number of iterations for the nonlinear method involved + % number of iterations for the nonlinear method involved /pgfplots/scale uniformly strategy iter/.initial=9, /pgfplots/allow reversal of rel axis cs/.is if=pgfplots@allow@reversal@of@rel@axis@cs,% /pgfplots/allow reversal of rel axis cs/.default=true,% @@ -2631,7 +2646,7 @@ /pgfplots/disablelogfilter y/.default=true, /pgfplots/disablelogfilter z/.is if=pgfplots@disablelogfilter@z, /pgfplots/disablelogfilter z/.default=true, - /pgfplots/disablelogfilter/.style={ + /pgfplots/disablelogfilter/.style={ /pgfplots/disablelogfilter x=#1, /pgfplots/disablelogfilter y=#1, /pgfplots/disablelogfilter z=#1, @@ -3157,9 +3172,9 @@ % % 'nodes near coords=<content of node>'. % The content is by default \pgfmathprintnumber\pgfplotspointmeta. - % - % Use 'point meta=y' after 'nodes near coords' to typeset the y coordinates - % Use 'point meta=x' to typeset the x coordinates + % + % Use 'point meta=y' after 'nodes near coords' to typeset the y coordinates + % Use 'point meta=x' to typeset the x coordinates /pgfplots/nodes near coords/.style={% /pgfplots/scatter/@pre marker code/.code={},% /pgfplots/scatter/@post marker code/.code={},% @@ -3221,7 +3236,7 @@ \fi % ok, place the node. \expandafter\node\expandafter[\pgfplots@nodes@near@coords@align,% - /pgfplots/every node near coord] + /pgfplots/every node near coord] {% \if1\csname pgfpmeta@\pgfplotspointmetainputhandler @issymbolic\endcsname% % point meta=explicit symbolic @@ -3402,7 +3417,7 @@ /pgf/bar shift={% % total width = n*w + (n-1)*skip % -> subtract half for centering - -0.5*(\numplotsofactualtype*\pgfplotbarwidth + (\numplotsofactualtype-1)*(#1)) + + -0.5*(\numplotsofactualtype*\pgfplotbarwidth + (\numplotsofactualtype-1)*(#1)) + % the '0.5*w' is for centering (.5+\plotnumofactualtype)*\pgfplotbarwidth + \plotnumofactualtype*(#1)},% }, @@ -3419,7 +3434,7 @@ #1shift={% % total width = n*w + (n-1)*skip % -> subtract half for centering - -0.5*(\numplotsofactualtype*(#1) + (\numplotsofactualtype-1)*(#2)) + + -0.5*(\numplotsofactualtype*(#1) + (\numplotsofactualtype-1)*(#2)) + % the '0.5*w' is for centering (.5+\plotnumofactualtype)*(#1) + \plotnumofactualtype*(#2)% },% @@ -3430,6 +3445,7 @@ bar cycle list, xtick align=outside, ybar legend, + clip limits if compat={clip ylimits=false}, /pgfplots/set point meta if empty=f(x),% /pgfplots/bar shift auto={#1}, /pgfplots/error bars/draw error bar/.code 2 args={% @@ -3466,6 +3482,7 @@ bar direction=x, bar cycle list, ytick align=outside, + clip limits if compat={clip xlimits=false}, /pgfplots/xbar legend, /pgfplots/set point meta if empty=x,% /pgfplots/bar shift auto={#1}, @@ -3496,6 +3513,7 @@ bar cycle list, x tick label as interval, xmajorgrids, + clip limits if compat={clip ylimits=false}, xtick align=outside, xtick=data, ybar interval legend, @@ -3516,6 +3534,7 @@ ymajorgrids, ytick align=outside, xbar interval legend, + clip limits if compat={clip xlimits=false}, bar interval width={#1/\numplotsofactualtype}, bar interval shift={(\plotnumofactualtype+0.5)/\numplotsofactualtype}, /tikz/xbar interval, @@ -3527,6 +3546,7 @@ bar direction=x, bar cycle list, single xbar legend, + clip limits if compat={clip xlimits=false}, stack plots=x, stack dir=#1, /tikz/xbar, @@ -3539,6 +3559,7 @@ bar direction=y, bar cycle list, single ybar legend, + clip limits if compat={clip ylimits=false}, stack plots=y, stack dir=#1, /tikz/ybar, @@ -3551,6 +3572,7 @@ bar direction=x, /pgfplots/set point meta if empty=x,% bar cycle list, + clip limits if compat={clip xlimits=false}, single xbar legend, stack plots=x, stack dir=#1, @@ -3563,6 +3585,7 @@ /pgfplots/set point meta if empty=f(x),% bar cycle list, single ybar legend, + clip limits if compat={clip ylimits=false}, stack plots=y, stack dir=#1, /tikz/ybar interval, @@ -3593,7 +3616,7 @@ /pgfplots/plot graphics/zmin/.initial=, /pgfplots/plot graphics/zmax/.initial=, % - % a) to provide a bounding box: points={(0,1) (0,2)} + % a) to provide a bounding box: points={(0,1) (0,2)} % or b) to squeeze the graphics into internal image coordinates: % points={(0,1,0) => (0,4) (0,0,1) => (40,600)} % or c) both of them. @@ -3608,7 +3631,7 @@ % % this command key should defined \pgfmathresult to be % \pgfmathresult -> {{<wd>}{<ht>}} - % where <wd> is the natural width of the input image and + % where <wd> is the natural width of the input image and % <ht> is the natural height. % The input image file name is available as 'plot graphics/src'. % The default implementation invoked 'lowlevel draw={}{}' and @@ -3812,7 +3835,7 @@ % % Set the shader used for surface plots. % RULES: - % 1. meshmode == 'm' (mesh): + % 1. meshmode == 'm' (mesh): % This means we use "shader/flat" to determine the colors % and ignore fill colors. % 2. meshmode == 's' (surf): @@ -4008,7 +4031,7 @@ /pgfplots/colormap uniform/always/.code={\def\pgfplots@colormap@uniform@choice{0}}, /pgfplots/colormap uniform/if requested/.code={\def\pgfplots@colormap@uniform@choice{1}}, /pgfplots/colormap uniform/always, - % + % % #1: a number X with 0<= x <=0.9 which defines the relative size % of the extra interval used for 'colormap access=piecewise constant' % The value #1=0 disables the extra interval. @@ -4177,7 +4200,7 @@ /pgfplots/scatter/@post marker code/.prefix code={\endscope}% }% % Now:remember the classes. - \pgfkeyssetvalue{/pgfplots/scatter/classes/values}{#1}% + \pgfkeyssetvalue{/pgfplots/scatter/classes/values}{#1}% % % and generate legend items for every single class, % But ONLY if we really *have* a plot which uses @@ -4268,6 +4291,9 @@ /pgfplots/cube/size x=\pgfplotmarksize, /pgfplots/cube/size y=\pgfplotmarksize, /pgfplots/cube/size z=\pgfplotmarksize, + % + /pgfplots/3d log sampling/.is if=pgfplots@threedim@log@sampling, + % /pgfplots/trig format/.style={/pgf/trig format={#1}}, /pgfplots/xtick placement tolerance/.initial=0.05pt, /pgfplots/ytick placement tolerance/.initial=0.05pt, @@ -4306,6 +4332,7 @@ /pgfplots/compat/anchors/1.12/.style= {/pgfplots/compat/anchors/1.3},% /pgfplots/compat/anchors/1.13/.style= {/pgfplots/compat/anchors/1.3,/pgfplots/correct polar positioning=true},% /pgfplots/compat/anchors/1.14/.style= {/pgfplots/compat/anchors/1.13},% + /pgfplots/compat/anchors/1.15/.style= {/pgfplots/compat/anchors/1.13},% /pgfplots/compat/anchors/default/.style={/pgfplots/compat/anchors/1.3},% % /pgfplots/compat/empty line/.is choice, @@ -4323,6 +4350,7 @@ /pgfplots/compat/empty line/1.12/.style= {/pgfplots/compat/empty line/1.4},% /pgfplots/compat/empty line/1.13/.style= {/pgfplots/compat/empty line/1.4},% /pgfplots/compat/empty line/1.14/.style= {/pgfplots/compat/empty line/1.4},% + /pgfplots/compat/empty line/1.15/.style= {/pgfplots/compat/empty line/1.4},% /pgfplots/compat/empty line/default/.style= {/pgfplots/compat/empty line/1.4},% % /pgfplots/compat/path replacement/.is choice, @@ -4340,6 +4368,7 @@ /pgfplots/compat/path replacement/1.12/.style= {/pgfplots/compat/path replacement/1.5.1}, /pgfplots/compat/path replacement/1.13/.style= {/pgfplots/compat/path replacement/1.5.1}, /pgfplots/compat/path replacement/1.14/.style= {/pgfplots/compat/path replacement/1.5.1}, + /pgfplots/compat/path replacement/1.15/.style= {/pgfplots/compat/path replacement/1.5.1}, /pgfplots/compat/path replacement/default/.style= {/pgfplots/compat/path replacement/pre 1.3},% % /pgfplots/compat/pgfpoint substitution/.is choice, @@ -4357,6 +4386,7 @@ /pgfplots/compat/pgfpoint substitution/1.12/.style= {/pgfplots/compat/pgfpoint substitution/1.11}, /pgfplots/compat/pgfpoint substitution/1.13/.style= {/pgfplots/compat/pgfpoint substitution/1.11}, /pgfplots/compat/pgfpoint substitution/1.14/.style= {/pgfplots/compat/pgfpoint substitution/1.11}, + /pgfplots/compat/pgfpoint substitution/1.15/.style= {/pgfplots/compat/pgfpoint substitution/1.11}, /pgfplots/compat/pgfpoint substitution/default/.style= {/pgfplots/compat/pgfpoint substitution/pre 1.3},% %ellipse/.is if=pgfplots@path@replace@ellipse, % @@ -4384,7 +4414,8 @@ /pgfplots/compat/labels/1.12/.style= {/pgfplots/compat/labels/1.8},% /pgfplots/compat/labels/1.13/.style= {/pgfplots/compat/labels/1.8},% /pgfplots/compat/labels/1.14/.style= {/pgfplots/compat/labels/1.8},% - /pgfplots/compat/labels/default/.style= {/pgfplots/compat/labels/pre 1.3},% maintain backwards compatibility + /pgfplots/compat/labels/1.15/.style= {/pgfplots/compat/labels/1.8},% + /pgfplots/compat/labels/default/.style= {/pgfplots/compat/labels/pre 1.3},% maintain backwards compatibility % /pgfplots/compat/bar nodes/.is choice, /pgfplots/compat/bar nodes/pre 1.3/.style={% @@ -4436,7 +4467,8 @@ },% },% /pgfplots/compat/bar nodes/1.14/.style= {/pgfplots/compat/bar nodes/1.13},% - /pgfplots/compat/bar nodes/default/.style= {/pgfplots/compat/bar nodes/pre 1.3},% maintain backwards compatibility + /pgfplots/compat/bar nodes/1.15/.style= {/pgfplots/compat/bar nodes/1.13},% + /pgfplots/compat/bar nodes/default/.style= {/pgfplots/compat/bar nodes/pre 1.3},% maintain backwards compatibility /pgfplots/compat/bar nodes/default, % % search for the \pgfplots@compat@scaling@coordmath -- using float @@ -4468,6 +4500,7 @@ /pgfplots/compat/scaling/1.12/.style={/pgfplots/compat/scaling/1.6}, /pgfplots/compat/scaling/1.13/.style={/pgfplots/compat/scaling/1.6}, /pgfplots/compat/scaling/1.14/.style={/pgfplots/compat/scaling/1.6}, + /pgfplots/compat/scaling/1.15/.style={/pgfplots/compat/scaling/1.6}, /pgfplots/compat/scaling/default/.style={/pgfplots/compat/scaling/1.4}, % /pgfplots/compat/scale mode/.is choice, @@ -4485,6 +4518,7 @@ /pgfplots/compat/scale mode/1.12/.style={/pgfplots/compat/scale mode/1.6}, /pgfplots/compat/scale mode/1.13/.style={/pgfplots/compat/scale mode/1.6}, /pgfplots/compat/scale mode/1.14/.style={/pgfplots/compat/scale mode/1.6}, + /pgfplots/compat/scale mode/1.15/.style={/pgfplots/compat/scale mode/1.6}, /pgfplots/compat/scale mode/default/.style={/pgfplots/compat/scale mode/1.5}, % % @@ -4503,6 +4537,7 @@ /pgfplots/compat/plot3graphics/1.12/.style= {/pgfplots/compat/plot3graphics/1.6},% /pgfplots/compat/plot3graphics/1.13/.style= {/pgfplots/compat/plot3graphics/1.6},% /pgfplots/compat/plot3graphics/1.14/.style= {/pgfplots/compat/plot3graphics/1.6},% + /pgfplots/compat/plot3graphics/1.15/.style= {/pgfplots/compat/plot3graphics/1.6},% /pgfplots/compat/plot3graphics/default/.style= {/pgfplots/compat/plot3graphics/1.5},% % % ATTENTION: there is a compatibility issue which slipped through @@ -4522,9 +4557,9 @@ % Consequently, I cannot introduce compatibity switches without % loosing compatibility. % - % I chose to keep the correct unary minus sign. If you ever want + % I chose to keep the correct unary minus sign. If you ever want % to revert to the old version in order to keep spacing intact, use - % + % % \pgfkeys{/pgf/compat/number printer=2.10} % % Risk: the size of such tick labels changed and the @@ -4547,6 +4582,7 @@ /pgfplots/compat/bar width by units/1.12/.style= {/pgfplots/compat/bar width by units/1.7}, /pgfplots/compat/bar width by units/1.13/.style= {/pgfplots/compat/bar width by units/1.7}, /pgfplots/compat/bar width by units/1.14/.style= {/pgfplots/compat/bar width by units/1.7}, + /pgfplots/compat/bar width by units/1.15/.style= {/pgfplots/compat/bar width by units/1.7}, /pgfplots/compat/bar width by units/default/.style={/pgfplots/compat/bar width by units/pre 1.3}, % /pgfplots/compat/BB/.is choice, @@ -4564,6 +4600,7 @@ /pgfplots/compat/BB/1.12/.style= {/pgfplots/compat/BB/1.8},% /pgfplots/compat/BB/1.13/.style= {/pgfplots/compat/BB/1.8},% /pgfplots/compat/BB/1.14/.style= {/pgfplots/compat/BB/1.8},% + /pgfplots/compat/BB/1.15/.style= {/pgfplots/compat/BB/1.8},% /pgfplots/compat/BB/default/.style={/pgfplots/compat/BB/pre 1.3}, % /pgfplots/compat/general/.is choice, @@ -4577,6 +4614,8 @@ /pgfplots/compat/library hook={statistics}{/pgfplots/boxplot/estimator=legacy,/pgfplots/boxplot/ensure mark=false}, /pgfplots/colorbar pgfshading, /pgfplots/colorbar=false, + /pgfplots/3d log sampling=false, + /pgfplots/clip limits compat=true, },% /pgfplots/compat/general/1.3/.style= {/pgfplots/compat/general/pre 1.3}, /pgfplots/compat/general/1.4/.style= {/pgfplots/compat/general/pre 1.3},% @@ -4615,6 +4654,11 @@ %/pgfplots/colorbar sampled={surf,shader=interp,samples=2}, %/pgfplots/colorbar=false, },% + /pgfplots/compat/general/1.15/.style= {% + /pgfplots/compat/general/1.14, + /pgfplots/3d log sampling=true, % FIXME finish this feature: see unittest_log_sampling_3d + /pgfplots/clip limits compat=false, + },% /pgfplots/compat/general/default/.style={/pgfplots/compat/general/1.11}, % /pgfplots/enable tick line clipping/.is if=pgfplots@enable@tick@line@clipping, @@ -4632,7 +4676,7 @@ /pgfplots/compat/show suggested version/.is if=pgfplots@show@suggested@version, /pgfplots/compat/show suggested version=true, /pgfplots/compat/current/.initial=, - /pgfplots/compat/mostrecent/.initial=1.14, + /pgfplots/compat/mostrecent/.initial=1.15, /utils/exec={% \pgfplotsutilforeachcommasep{% /pgfplots/compat/current,% @@ -4761,6 +4805,18 @@ },% } +\def\pgfplots@glob@TMPa#1{% + \pgfkeys{% + /pgfplots/#1tick pos/lower/.style={/pgfplots/#1tick pos=left}, + /pgfplots/#1tick pos/bottom/.style={/pgfplots/#1tick pos=left}, + /pgfplots/#1tick pos/upper/.style={/pgfplots/#1tick pos=right}, + /pgfplots/#1tick pos/top/.style={/pgfplots/#1tick pos=right}, + }% +}% +\pgfplots@glob@TMPa x% +\pgfplots@glob@TMPa y% +\pgfplots@glob@TMPa z% + \def\pgfplots@ticklabel@typeset@arg#1{\pgfkeysvalueof{/pgfplots/typeset ticklabel/.@cmd}{#1}\pgfeov}% % backwards compatibility: @@ -4773,7 +4829,7 @@ \global\let\pgfplots@colorbar@draw@legacyimpl=\pgfplots@loc@TMPa \endgroup -% call +% call % \pgfkeyslet{.../.@cmd}\pgfplots@cant@set@in@this@context % to replace a key with a generic error message. \def\pgfplots@cant@set@in@this@context#1\pgfeov{\pgfplots@cant@set@in@this@context@} @@ -4924,7 +4980,7 @@ % Prepare special alignment features here. % % The idea is to: - % 1. Declare a local COORDINATE SYSTEM to place labels, + % 1. Declare a local COORDINATE SYSTEM to place labels, % the 'ticklabel cs' for the current axis. % It takes 1-2 arguments where the first is the coordinate on the % ticklabel axis (between 0 and 1). The second is an optional shift orthogonal to @@ -4943,7 +4999,7 @@ \pgfkeyslet{/tikz/sloped/orig/.@cmd}\pgfplots@loc@TMPa \pgfkeysdef{/tikz/sloped}{\pgfkeysalso{/tikz/sloped like #1 axis={##1}}}% % - \node + \node [/pgfplots/every axis label,% /pgfplots/every axis #1 label] {#2}; @@ -4995,7 +5051,7 @@ % Draws outer axis lines, i.e. those which are on the bounding box. % This has an effect if and only if axis #1 lines!=center. -% +% % % Ok, we don't mind whether edges with thick lines look ugly. We just % draw separate lines. This here is necessary if we want arrow heads. @@ -5022,7 +5078,7 @@ \pgfplotspointonorientedsurfaceabsetupfor{#2}{#1}{\pgfplotspointonorientedsurfaceN}% \pgfplots@transformshift@along@outer@normal@on@line@of@oriented@surf 0v% \pgfplots@drawgridlines@onorientedsurf@fromto{\csname pgfplots@#2min\endcsname}% - \endpgfextra + \endpgfextra }; }{}% \pgfplots@ifaxisline@B@onorientedsurf@should@be@drawn{1}{% @@ -5032,7 +5088,7 @@ \pgfplotspointonorientedsurfaceabsetupfor{#2}{#1}{\pgfplotspointonorientedsurfaceN}% \pgfplots@transformshift@along@outer@normal@on@line@of@oriented@surf 1v% \pgfplots@drawgridlines@onorientedsurf@fromto{\csname pgfplots@#2max\endcsname}% - \endpgfextra + \endpgfextra }; }{}% % @@ -5079,7 +5135,7 @@ %{ (\pgfplots@xmax, \pgfplots@ymax) } { \pgfextra\pgfpathmoveto{\pgfplotsqpointxy{\pgfplots@xmax}{\pgfplots@ymax}}\endpgfextra } \else - decorate [xdiscont,decoration={pre length=\xdisstart, post length=\xdisend}] + decorate [xdiscont,decoration={pre length=\xdisstart, post length=\xdisend}] %{ -- (\pgfplots@xmax, \pgfplots@ymax) } { \pgfextra\pgfpathlineto{\pgfplotsqpointxy{\pgfplots@xmax}{\pgfplots@ymax}}\endpgfextra } \fi @@ -5087,7 +5143,7 @@ %{ (\pgfplots@xmax, \pgfplots@ymin) } { \pgfextra\pgfpathmoveto{\pgfplotsqpointxy{\pgfplots@xmax}{\pgfplots@ymin}}\endpgfextra } \else - decorate [ydiscont,decoration={pre length=\ydisend, post length=\ydisstart}] + decorate [ydiscont,decoration={pre length=\ydisend, post length=\ydisstart}] %{ -- (\pgfplots@xmax, \pgfplots@ymin) } { \pgfextra\pgfpathlineto{\pgfplotsqpointxy{\pgfplots@xmax}{\pgfplots@ymin}}\endpgfextra } \fi @@ -5095,7 +5151,7 @@ %{ (\pgfplots@xmin, \pgfplots@ymin) } { \pgfextra\pgfpathmoveto{\pgfplotsqpointxy{\pgfplots@xmin}{\pgfplots@ymin}}\endpgfextra } \else - decorate [xdiscont,decoration={pre length=\xdisend, post length=\xdisstart}] + decorate [xdiscont,decoration={pre length=\xdisend, post length=\xdisstart}] %{ -- (\pgfplots@xmin, \pgfplots@ymin) } { \pgfextra\pgfpathlineto{\pgfplotsqpointxy{\pgfplots@xmin}{\pgfplots@ymin}}\endpgfextra } \fi @@ -5203,7 +5259,7 @@ % } % } % to get the different indices into the cycle lists. - %-------------------------------------------------- + %-------------------------------------------------- \c@pgf@counta=\pgfplots@cycle@dim\relax \c@pgf@countb=\pgfplots@listindex\relax \advance\c@pgf@counta by-1 @@ -5235,7 +5291,7 @@ % =\pgfplots@listindex \if A\pgfplots@cycle@multi@list@repeat % 'cycle multiindex list' - % + % % ensure that we respect the maxlen of the list: \pgfplotsmathmodint{\pgfplots@listindex}{\pgfkeysvalueof{/pgfplots/cycle multi list/@maxlen}}% \let\pgfplots@listindex=\pgfmathresult @@ -5317,14 +5373,14 @@ % I need to apply anything which might be relevant for \addplot % here. % But I do NOT want \scope since this might already affect the low - % level output. + % level output. % % This here works: % 1. set them to activate plot handlers and parameters like % samples and domain: \tikzset{#1}% % - % 2. we need to remember all these options inside of + % 2. we need to remember all these options inside of % 'current plot style' -- otherwise, they would not appear % inside of legend images and markers. \pgfplotssurveyphaseaddoptionsbeforesurveybegins{#1}% @@ -5384,8 +5440,8 @@ \fi } \def\pgfplots@path@closed@cycle@std{% - |- (perpendicular cs: - vertical line through={(current plot begin)}, + |- (perpendicular cs: + vertical line through={(current plot begin)}, horizontal line through={(\pgfplots@ZERO@x,\pgfplots@ZERO@y)}) -- cycle }% @@ -5464,7 +5520,7 @@ % % In contrast to \path, \pgfplotsextra can contain any command(s). % -% Syntax: either +% Syntax: either % \pgfplotsextra{<argument>} % or % \pgfplotsextra <argument> \endpgfplotsextra @@ -5684,7 +5740,7 @@ % It is called within legend's cell pictures in order to undo global % settings like stroke colors or the-like. \def\pgfplots@restore@state@before@legend@style{% - \pgfsetfillcolor{black}% + \pgfsetfillcolor{black}% % disable the transformations of pgfplots. This is only used by % pgfplots-specific plot handlers which work only if used inside % of an axis... disable it. @@ -5731,7 +5787,7 @@ \pgfplots@transposelegend \fi % - % + % \begingroup \ifx\pgfplots@createlegend@toname\pgfutil@empty % ok, draw legend. @@ -5748,7 +5804,7 @@ \let##1=\pgfplotsretval }% \fi - % assemble a + % assemble a % \matrix { % small plot & legend1\\ % small plot & legend2\\ @@ -5763,7 +5819,7 @@ % } % ( I have allocated the token registers in my % liststructure.sty) - % + % % \global\def\pgfplots@glob@TMPa{ % \matrix { % \TOKL@TA @@ -5807,11 +5863,11 @@ % % and the legend image into \t@pgfplots@tokb: \t@pgfplots@tokb=\expandafter{\pgfplotsretval}% - % ok. Now, the + % ok. Now, the % - 'b' register contains the IMAGE and % - 'c' register contains the TEXT \ifcase\legendplotpos - % legend plot pos=left + % legend plot pos=left \edef\pgfplots@matrixentry{% \the\t@pgfplots@tokb \noexpand\pgfmatrixnextcell @@ -5933,7 +5989,7 @@ }% } -% Defines a new \label{#1}. When \ref{#1} is used, the code +% Defines a new \label{#1}. When \ref{#1} is used, the code % \csname #3#2\endcsname % will be invoked. % \pgfplots@label[<optional prefix>]{<label name>}{<command prefix>} @@ -5974,7 +6030,7 @@ % this is a work-around to support the mcaption class: it % simply remembers the label name and invokes \label later-on. % This appears to be wrong in this context: I want to generate - % a pgfplots label. + % a pgfplots label. % % If someone writes \label{fig:one}, that label will be % redeclared in the margin - which appears to be correct. And @@ -6162,7 +6218,7 @@ \def\bool@pgfplots@loc@enlargelimits@min{0}% \def\bool@pgfplots@loc@enlargelimits@max{0}% % - % we can either enlarge + % we can either enlarge % ... using a relative limit (like 0.1 -> 10%) \def\pgfplots@enlargelimits@relthresh{0.1}% the default % ...or an absolute limit ( like 4 units) @@ -6171,8 +6227,8 @@ % % Relative and absolute values are relatively simple: we only need to compute and % add the changes to the already existing limits. The value with - % an absolute dimension is surprisingly complicated. - % + % an absolute dimension is surprisingly complicated. + % % The problem is: enlargelimits has to be computed before the % image has been scaled into its final size. This is not merely a % technical problem; this is how one wants it to be! @@ -6227,7 +6283,7 @@ % This here needs a different treatment because "enlarge x limits={abs=1cm}" % has to be applied AFTER the scaling is complete. To this end, it is % applied as the very last scaling step. It is applied after any post -% scales, and it only modifies axis limits. +% scales, and it only modifies axis limits. % % #1: x,y, or z % #2: 1 if the lower limit shall be enlarged, 0 if not @@ -6242,10 +6298,10 @@ \let\pgfplots@enlargelimits@absdimension@y=\pgfutil@empty \let\pgfplots@enlargelimits@absdimension@z=\pgfutil@empty -% Called as soon as the scaling is completely set up and any +% Called as soon as the scaling is completely set up and any % "enlarge #1 limits={abs=1cm}" % enlargements shall be done, i.e. enlargement by unit. -% +% % #1: x,y, or z \def\pgfplots@scaling@apply@enlargelimits@by@dimension#1{% \expandafter\ifx\csname pgfplots@enlargelimits@absdimension@#1\endcsname\pgfutil@empty @@ -6261,19 +6317,19 @@ }% -% PRECONDITION: +% PRECONDITION: % 1. width/height are set % 2. the unit vectors point indicate whether the axis is a standard % box or some skewed plot (their precise direction and magnitude is % irrelevant) -% 3. the enlargelimits code has already evaluated the case +% 3. the enlargelimits code has already evaluated the case % "enlargelimits={abs=1cm}" % % POSTCONDITION: % width and/or height might be modified \def\pgfplots@scaling@changewidthheight@for@enlargelimits@by@dimension{% \ifpgfplots@enlargelimits@respect@figure@size - % + % % decide if we need to do anything at all, i.e. if there IS % some option 'enlarge * limits={abs=1cm}' : \pgfplots@loc@tmpfalse @@ -6328,9 +6384,9 @@ \def\pgfplots@loc@TMPc{{1}{1}}% % % ah - we really *have* a standard boxed axis. - % Compute + % Compute % newwidth = width - enlargevalue - % newheight = height - enlargevalue + % newheight = height - enlargevalue % % newwidth will be stored in \pgfplots@loc@TMPa % and newheight in \pgfplots@loc@TMPb @@ -6383,7 +6439,7 @@ \fi } -% this here applies changes required for 'enlarge #1 limits={abs=1cm}', i.e. +% this here applies changes required for 'enlarge #1 limits={abs=1cm}', i.e. % for the case of numbers with units. % % The main difference is that it is applied AFTER the scaling of the @@ -6451,7 +6507,7 @@ \edef\enlargeabsolute{\pgf@sys@tonumber{\pgf@xb}}% \fi \ifdim\pgf@xb>0.001pt - % the case with + % the case with % enlargeabsolute ~= 0 % means that \pgfplots@@min ~= \pgfplots@@max. % It is handled in another method. @@ -6654,7 +6710,7 @@ \ifx\pgfplots@data@zmin\pgfplots@invalidrange@zmax \global\let\pgfplots@data@zmax=\pgfplots@zmax \fi - \ifpgfplots@clip@limits + \ifpgfplots@clip@limits@x \else % there is a rare change that min > max. % Handle that ... @@ -6662,11 +6718,17 @@ \global\let\pgfplots@xmin=\pgfmathresult \pgfplotscoordmath{x}{max}{\pgfplots@xmin}{\pgfplots@xmax}% \global\let\pgfplots@xmax=\pgfmathresult + \fi + \ifpgfplots@clip@limits@y + \else % \pgfplotscoordmath{y}{min}{\pgfplots@ymin}{\pgfplots@ymax}% \global\let\pgfplots@ymin=\pgfmathresult \pgfplotscoordmath{y}{max}{\pgfplots@ymin}{\pgfplots@ymax}% \global\let\pgfplots@ymax=\pgfmathresult + \fi + \ifpgfplots@clip@limits@z + \else % \ifpgfplots@threedim \pgfplotscoordmath{z}{min}{\pgfplots@zmin}{\pgfplots@zmax}% @@ -6684,7 +6746,7 @@ % This method finishes the accumulated information of axis limits and % all internal flag fields. % -% PRECONDITION: +% PRECONDITION: % - all plots are finally finished; axis and data limits are known. % % POSTCONDITION: @@ -6750,6 +6812,9 @@ \global\let\pgfplots@firstplot@coords@z=\pgfutil@empty % \pgfplots@limits@ready + % + \pgfplots@set@options@after@survey1% + % \pgfplotspoint@initialisation % % @@ -6792,7 +6857,7 @@ \def\pgfplots@init@axis@shift{% \pgfplotsforeachentryinCSV{\pgfplots@loc@TMPa}{x,y,z}{% - % check if 'axis #1 line shift' is set and non-zero. + % check if 'axis #1 line shift' is set and non-zero. \expandafter\pgfplots@if@has@axis@shift\pgfplots@loc@TMPa{% \pgfkeysgetvalue{/pgfplots/axis \pgfplots@loc@TMPa\space line shift}\pgfplots@loc@TMPb \pgfmathparse{\pgfplots@loc@TMPb}% @@ -6839,7 +6904,7 @@ \pgfplots@separate@axis@linestrue \fi \fi - % + % % normalize the value - no need to parse it over and over again: \pgfkeyslet{/pgfplots/axis \pgfplots@loc@TMPa\space line shift}\pgfplots@loc@TMPb }{}% @@ -6883,10 +6948,25 @@ \expandafter\def\csname pgfplots@#1ticklabel\endcsname{\axisdefaultticklabel}% }{% \expandafter\def\csname pgfplots@#1ticklabel\endcsname{\axisdefaultticklabellog}% - }% + }% \fi \expandafter\ifx\csname pgfplots@extra@#1ticklabel\endcsname\pgfutil@empty - \pgfutil@namelet{pgfplots@extra@#1ticklabel}{pgfplots@#1ticklabel}% + \pgfutil@namelet{pgfplots@loc@TMPa}{pgfplots@#1ticklabel}% + \pgfutil@namelet{pgfplots@loc@TMPb}{pgfplots@user@ticklabel@list@#1}% + \ifx\pgfplots@loc@TMPa\pgfplots@loc@TMPb + % Ah - someone used '#1ticklabels' (or its friends). + % these are bound to specific positions and make no sense in this context. + \pgfplots@if{pgfplots@#1islinear}{% + \expandafter\def\csname pgfplots@extra@#1ticklabel\endcsname{\axisdefaultticklabel}% + }{% + \expandafter\def\csname pgfplots@extra@#1ticklabel\endcsname{\axisdefaultticklabellog}% + }% + \else + % inherit the global argument of '#1ticklabel' -- it will probably contain generic code to + % typeset labels at any positions. + % The "probably" is a buest-guess, though... + \pgfutil@namelet{pgfplots@extra@#1ticklabel}{pgfplots@#1ticklabel}% + \fi \fi % \if0\csname pgfplots@#1axislinesnum\endcsname\else @@ -7114,7 +7194,7 @@ % Note that the shift in T is not of interest, we only deal with % T_a(x) = 10^{s_a} x. % -% Thus, this routine invokes #3 if +% Thus, this routine invokes #3 if % ( 10^{s1} * veclen1 < 10^{s2} * veclen2 ) % <=> % ( 10^{s1-s2} * veclen1 < veclen2 ). @@ -7300,7 +7380,7 @@ \pgfpointintersectionoflines {\origin} {\pgfpointadd{\origin}{% - \innerdiagonal\global\pgf@x=0sp + \innerdiagonal\global\pgf@x=0sp \pgfplots@assert@not@zero{\pgf@y}{y axis has eyy=0; cannot compute above origin anchor}% }% }% @@ -7741,7 +7821,7 @@ % Defines a new axis type `#1' with initialization code `#2'. -% +% % The name #1 will be available as value for 'axis type=#1' and % furthermore, an environment '\begin{#1axis}' will be available. % @@ -7952,7 +8032,7 @@ % have called % \pgfplots@draw@axis again. % The difference is in the - % \pgfplotsifaxissurfaceisforeground checks. + % \pgfplotsifaxissurfaceisforeground checks. % Furthermore, I have removed the case distinctions for % the different axis line combinations. %\if10 @@ -8110,7 +8190,7 @@ % - 'vv0' 'vv1' % - 'v0v' 'v1v' % ' '0vv' '1vv' -% +% % @see \pgfplotspointonorientedsurfaceabmatchaxisline for details % about those three-character ids. % @@ -8142,9 +8222,9 @@ % % The operation is relatively fast. \def\pgfplots@decide@which@figure@surfaces@are@drawn{% - \expandafter\def\csname pgfplots@surfviewdepth@2vv\endcsname{f}% - \expandafter\def\csname pgfplots@surfviewdepth@v2v\endcsname{f}% - \expandafter\def\csname pgfplots@surfviewdepth@vv2\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@2vv\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@v2v\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@vv2\endcsname{f}% \ifpgfplots@threedim \pgfplotsmathvectortocomponents\pgfplots@view@dir@threedim{pgfplots@loc@}{default}% % respect reversed axes here. If I am not mistaken, it should @@ -8153,35 +8233,35 @@ \expandafter\def\csname pgfplots@surfviewdepth@0vv\endcsname{f}% foreground \expandafter\def\csname pgfplots@surfviewdepth@1vv\endcsname{b}% background }{% - \expandafter\def\csname pgfplots@surfviewdepth@0vv\endcsname{b}% - \expandafter\def\csname pgfplots@surfviewdepth@1vv\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@0vv\endcsname{b}% + \expandafter\def\csname pgfplots@surfviewdepth@1vv\endcsname{f}% }% \pgfplotscoordmath{default}{if is}{\pgfplots@loc@y}{\if\pgfkeysvalueof{/pgfplots/y dir/value}n+\else-\fi}{% \expandafter\def\csname pgfplots@surfviewdepth@v0v\endcsname{f}% foreground \expandafter\def\csname pgfplots@surfviewdepth@v1v\endcsname{b}% background }{% - \expandafter\def\csname pgfplots@surfviewdepth@v0v\endcsname{b}% - \expandafter\def\csname pgfplots@surfviewdepth@v1v\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@v0v\endcsname{b}% + \expandafter\def\csname pgfplots@surfviewdepth@v1v\endcsname{f}% }% \pgfplotscoordmath{default}{if is}{\pgfplots@loc@z}{\if\pgfkeysvalueof{/pgfplots/z dir/value}n+\else-\fi}{% \expandafter\def\csname pgfplots@surfviewdepth@vv0\endcsname{f}% foreground \expandafter\def\csname pgfplots@surfviewdepth@vv1\endcsname{b}% background }{% - \expandafter\def\csname pgfplots@surfviewdepth@vv0\endcsname{b}% - \expandafter\def\csname pgfplots@surfviewdepth@vv1\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@vv0\endcsname{b}% + \expandafter\def\csname pgfplots@surfviewdepth@vv1\endcsname{f}% }% \else % FIXME : it might be better to implement that stuff here % implicilty using the 3D algorithms. % % this here is the only important one: - \expandafter\def\csname pgfplots@surfviewdepth@vv0\endcsname{b}% + \expandafter\def\csname pgfplots@surfviewdepth@vv0\endcsname{b}% % - \expandafter\def\csname pgfplots@surfviewdepth@0vv\endcsname{b}% - \expandafter\def\csname pgfplots@surfviewdepth@1vv\endcsname{f}% - \expandafter\def\csname pgfplots@surfviewdepth@v0v\endcsname{b}% - \expandafter\def\csname pgfplots@surfviewdepth@v1v\endcsname{f}% - \expandafter\def\csname pgfplots@surfviewdepth@vv1\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@0vv\endcsname{b}% + \expandafter\def\csname pgfplots@surfviewdepth@1vv\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@v0v\endcsname{b}% + \expandafter\def\csname pgfplots@surfviewdepth@v1v\endcsname{f}% + \expandafter\def\csname pgfplots@surfviewdepth@vv1\endcsname{f}% \def\pgfplotsifaxislineisonconvexhull##1##2##3{##2}% ALWAYS TRUE \def\pgfplots@ifaxisline@B@onorientedsurf@should@be@drawn@##1##2##3{##2}% ALWAYS TRUE % @@ -8189,7 +8269,7 @@ } % Initialises the 'pgfplots@[xyz]ticklabelaxisspecs' macro according to -% the foreground/background situation of the axis and the '[xyz]ticklabel pos' +% the foreground/background situation of the axis and the '[xyz]ticklabel pos' % keys. \def\pgfplots@init@ticklabelaxisspec{% \ifpgfplots@threedim @@ -8229,14 +8309,14 @@ % It does NOT work outside of it. % % It initialises the 'pgfplots@#1ticklabelaxisspec' macro according to -% the foreground/background situation of the axis and the '#1ticklabel pos' +% the foreground/background situation of the axis and the '#1ticklabel pos' % key. % % #1: the axis: x,y or z % #2: either x or y. It refers to the PROJECTED coordinate which -% should be used to compare the 'lower' and 'upper' arguments of the +% should be used to compare the 'lower' and 'upper' arguments of the % |[xyz]ticklabel pos| key. -% +% % PRECONDITION: % \pgfplots@tmp@center[xy] is set. % @@ -8286,7 +8366,7 @@ % }{% % \pgfplots@error{INTERNAL ERROR}% % }% - %-------------------------------------------------- + %-------------------------------------------------- % Decide whether the '{0.5}{1}{0}' point is above or below % the {0.5}{0.5}{0.5} point. Again, the '<' operation is based % on the '#1ticklabel pos' key, the projection and #2. @@ -8350,7 +8430,7 @@ % \expandafter\def\csname pgfplots@#1tickposnum\endcsname{3}% set to 'right' % \fi % \fi - %-------------------------------------------------- + %-------------------------------------------------- \if l\csname pgfplots@#1ticklabel@pos\endcsname \expandafter\edef\csname pgfplots@#1ticklabelaxisspec\endcsname{\pgfplots@loc@to@threedim 1}% \fi @@ -8372,7 +8452,7 @@ % Processes every tick mark in direction #1 and draws tick lines, tick % labels, grid lines, axis lines and extra ticks. -% +% % #1 : the direction into which tick positions are processed. % #2 : the direction in which tick lines and grid lines shall be drawn. % #3 : the direction which is currently fixed. @@ -8500,7 +8580,7 @@ % certainly use a different style for axis labels than the default 2d % style. % -% Thus, all style changes which are relevant for 'every 3d description' +% Thus, all style changes which are relevant for 'every 3d description' % have NOT YET been processed (they have been appended to 'every axis'). \def\pgfplots@BEGIN@prepare@description@styles{% \ifpgfplots@threedim @@ -8521,7 +8601,7 @@ % Shortcut for '\pgfplotsset{set layers={#1}}'. -% +% % USAGE: % 1. \pgfplotssetlayers{<layer config name>} (one declared with /.define layer set) % 2. \pgfplotssetlayers (no braces) @@ -8545,7 +8625,7 @@ % - a \pgfsetlayers{<list>} is issued (immediately) % - '/pgfplots/@set layers arg' is defined such that any following axes can initialized their layers. \def\pgfplots@key@set@layers#1{% - % + % % auto detect if '#1' is a defined layer set: \pgfkeysifdefined{#1/list}{% \def\pgfkeyscurrentname{#1}% @@ -8704,10 +8784,10 @@ % The purpose of this method is to check for the cases where no cell picture is necessary. % The idea behind this anchor is to insert the axis DIRECTLY into the embedding tikzpicture, without -% a posteriori shifting. +% a posteriori shifting. % % A posteriori shifting == anchors whose dimensions are not fixed -% until the complete axis has been "typeset". +% until the complete axis has been "typeset". % % Disabling the cell picture will still prepare ALL anchors correctly, % but it disables many of the anchor choices when it comes to the @@ -8733,7 +8813,7 @@ % % FIXME : do we need to renormalize this here? apparently % not... - %\def\pgfplots@anchorname{image}% + %\def\pgfplots@anchorname{image}% % \let\pgfplots@BEGIN@cell@picture=\pgfplots@BEGIN@cell@picture@DISABLED \let\pgfplots@END@cell@picture=\pgfplots@END@cell@picture@DISABLED @@ -8741,10 +8821,10 @@ \let\pgfplots@finally@correct@child@node@positions=\relax % % translate the coordinate system before the 'current axis' - % node is generated. + % node is generated. \expandafter\def\expandafter\pgfplots@beforenode\expandafter{\pgfplots@beforenode \setbox\pgfnodepartimagebox=\hbox{}% - }% + }% }% } @@ -8782,7 +8862,7 @@ \pgfplots@sys@beforenode % create a leight-weight 'current axis' node for anchor references % (which may happen during both, the axis descriptions or any - % path/plot commands). + % path/plot commands). \pgfmultipartnode{pgfplots@low@level@shape@INNER}{image}{current axis}{\pgfusepath{discard}}% \endgroup }% @@ -8860,7 +8940,7 @@ % % % \pgfplotspointorigininternal: - % used for anchor=<some node inside of the axis> and for + % used for anchor=<some node inside of the axis> and for % 'cell picture=true' in order to correct remembered node positions: \xdef\pgfplotspointorigininternal{\global\pgf@x=\the\pgf@picminx\space\global\pgf@y=\the\pgf@picminy\space}% % @@ -9026,12 +9106,12 @@ % - 00v % - 0v0 % - v00 - % so, use + % so, use % 010 (01v) 011 % 011 (0v1) 001 % 001 (v01) 101 % 101 (10v) 100 - % 100 (1v0) 110 + % 100 (1v0) 110 % 110 (v10) 011 (cycle) \def\pgfplots@clippath@install##1{% \pgfpathmoveto{\pgfplotsqpointxyz{\pgfplots@xmin}{\pgfplots@ymax}{\pgfplots@zmin}}% @@ -9050,10 +9130,10 @@ % - 00v % - 0v1 % - v01 - % so, use + % so, use % 010 (01v) 011 - % 011 (v11) 111 - % 111 (1v1) 101 + % 011 (v11) 111 + % 111 (1v1) 101 % 101 (10v) 100 % 100 (v00) 000 % 000 (0v0) 010 (cycle) @@ -9077,11 +9157,11 @@ % - 0v0 % - v10 % so, use - % 000 (00v) 001 - % 001 (0v1) 011 - % 011 (v11) 111 - % 111 (11v) 110 - % 110 (1v0) 100 + % 000 (00v) 001 + % 001 (0v1) 011 + % 011 (v11) 111 + % 111 (11v) 110 + % 110 (1v0) 100 % 100 (v00) 000 (cycle) \def\pgfplots@clippath@install##1{% \pgfpathmoveto{\pgfplotsqpointxyz{\pgfplots@xmin}{\pgfplots@ymin}{\pgfplots@zmin}}% @@ -9101,11 +9181,11 @@ % - 0v1 % - v11 % so, use - % 000 (00v) 001 - % 001 (v01) 101 - % 101 (1v1) 111 - % 111 (11v) 110 - % 110 (v10) 010 + % 000 (00v) 001 + % 001 (v01) 101 + % 101 (1v1) 111 + % 111 (11v) 110 + % 110 (v10) 010 % 010 (0v0) 000 (cycle) \def\pgfplots@clippath@install##1{% \pgfpathmoveto{\pgfplotsqpointxyz{\pgfplots@xmin}{\pgfplots@ymin}{\pgfplots@zmin}}% @@ -9129,11 +9209,11 @@ % - 1v0 % - v00 % So, use - % 110 (11v) 111 - % 111 (1v1) 101 - % 101 (v01) 001 - % 001 (00v) 000 - % 000 (0v0) 010 + % 110 (11v) 111 + % 111 (1v1) 101 + % 101 (v01) 001 + % 001 (00v) 000 + % 000 (0v0) 010 % 010 (v10) 110 (cycle) \def\pgfplots@clippath@install##1{% \pgfpathmoveto{\pgfplotsqpointxyz{\pgfplots@xmax}{\pgfplots@ymax}{\pgfplots@zmin}}% @@ -9152,11 +9232,11 @@ % - 1v1 % - v01 % So, use - % 110 (11v) 111 - % 111 (v11) 011 - % 011 (0v1) 001 - % 001 (00v) 000 - % 000 (v00) 100 + % 110 (11v) 111 + % 111 (v11) 011 + % 011 (0v1) 001 + % 001 (00v) 000 + % 000 (v00) 100 % 100 (1v0) 110 (cycle) \def\pgfplots@clippath@install##1{% \pgfpathmoveto{\pgfplotsqpointxyz{\pgfplots@xmax}{\pgfplots@ymax}{\pgfplots@zmin}}% @@ -9177,11 +9257,11 @@ % - 1v0 % - v10 % So, use - % 100 (10v) 101 - % 101 (1v1) 111 - % 111 (v11) 011 - % 011 (01v) 010 - % 010 (0v0) 000 + % 100 (10v) 101 + % 101 (1v1) 111 + % 111 (v11) 011 + % 011 (01v) 010 + % 010 (0v0) 000 % 000 (v00) 100 (cycle) \def\pgfplots@clippath@install##1{% \pgfpathmoveto{\pgfplotsqpointxyz{\pgfplots@xmax}{\pgfplots@ymin}{\pgfplots@zmin}}% @@ -9200,11 +9280,11 @@ % - 1v1 % - v11 % So, use - % 100 (10v) 101 - % 101 (v01) 001 - % 001 (0v1) 011 - % 011 (01v) 010 - % 010 (v10) 110 + % 100 (10v) 101 + % 101 (v01) 001 + % 001 (0v1) 011 + % 011 (01v) 010 + % 010 (v10) 110 % 110 (1v0) 100 (cycle) \def\pgfplots@clippath@install##1{% \pgfpathmoveto{\pgfplotsqpointxyz{\pgfplots@xmax}{\pgfplots@ymin}{\pgfplots@zmin}}% @@ -9219,7 +9299,7 @@ }% }% }% - + \else \pgfplotsqpointxy{\pgfplots@xmin}{\pgfplots@ymin}% \edef\pgfplots@loc@TMPa{\global\pgf@x=\the\pgf@x\space\global\pgf@y=\the\pgf@y\space}% @@ -9329,9 +9409,9 @@ }% \def\pgfplots@clippath@install@test{\pgfusepath{clip}}% -% This is the main part of the implementation for +% This is the main part of the implementation for % 'clip bounding box=upper bound' : it collects the bounding box of everything inside of -% the clipped area. Then in the associated \endscope, it clips that bounding box to the expected +% the clipped area. Then in the associated \endscope, it clips that bounding box to the expected % clip path -- and protocols that size. \def\pgfplots@clippath@install@BB@upper@bound{% \tikzset{ @@ -9747,17 +9827,17 @@ {\pgfplots@evalute@tikz@coord@system@interface@x[]}% } -% In case of (semi-) logplots, this command will +% In case of (semi-) logplots, this command will % - assign a filter which invokes \pgfmathlog@{} for each coordinate % - replace any user-specified coordinate by its log. % % All subsequent commands will then work with logarithmic coordinates. % -% PRECONDITION: -% - The user input options have been set correctly, +% PRECONDITION: +% - The user input options have been set correctly, % - the options have been set, but are not applied % -% POSTCONDITION: +% POSTCONDITION: % - any user input has been parsed % - any user input for log-axis has been replaced by its log if % necessary @@ -9779,9 +9859,9 @@ \expandafter\edef\csname pgfplots@prepare@#1coord\endcsname##1{% % do not expand it here - might contain unexpandable % material which is processed by the #1 coord trafo: - % FIXME : this might produce an endless loop if ##1 = \pgfmathresult! + % FIXME : this might produce an endless loop if ##1 = \pgfmathresult! \noexpand\def\noexpand\pgfmathresult{##1}% - % this becomes + % this becomes \expandafter\noexpand\csname pgfplots@highlevel@trafo@#1\endcsname{##1}\noexpand\pgfeov % % ensure that it is expanded. @@ -9911,7 +9991,7 @@ % % generate default ticks in the 'log basis', not base 10: \pgfplotsset{/pgfplots/log basis ticks=#1}% - % + % \ifdim\pgfkeysvalueof{/pgfplots/log basis #1}pt=10pt \else \pgfplots@identify@log@minor@tick@posfalse @@ -10061,7 +10141,7 @@ \else \pgfplots@show@label{y}{\pgfplots@label@}% \fi - \fi + \fi \fi \ifpgfplots@threedim \ifpgfplots@hide@z @@ -10140,7 +10220,7 @@ % \pgfnodealias{parent axis}{current axis}% % - % FIXME : + % FIXME : % I would really prefer to find a different way to move these % variables out of the current scope. But expansion leads to % mistakes with '#' characters ... :-( @@ -10248,7 +10328,7 @@ \noexpand\expandafter \noexpand\gdef\noexpand\csname pgfplots@colorbar@to@name@\pgfplots@colorbar@toname\endcsname{\the\toks0}}% \xdef#1{}% NOP. - % + % % make sure \ref{<colorbarname>} works: \pgfplots@label{\pgfplots@colorbar@toname}{pgfplots@colorbar@to@name@}% \fi @@ -10291,7 +10371,7 @@ \def\pgfplots@loc@TMPa{cmyk}% \ifx\pgfplots@loc@TMPa\pgfplotsretval \pgfutil@ifundefined{pgfplots@colorbar@CMYK@\pgfplots@loc@TMPb}{% - \pgfplotswarning{colorbar CMYK unsupported}{\pgfplots@loc@TMPb}\pgfeov% + \pgfplotswarning{colorbar CMYK unsupported}{\pgfplots@loc@TMPb}\pgfeov% \expandafter\gdef\csname pgfplots@colorbar@CMYK@\pgfplots@loc@TMPb\endcsname{1}% }{}% \def\b@pgfplots@colorbar@fallback@to@sampled{1}% @@ -10330,7 +10410,7 @@ \pgfplotsset{% /pgfplots/every axis plot post/.append code={% \ifpgfplots@collect@firstplot@astick - % Oh! Someone wrote 'ytick=data. We want the precise positions. + % Oh! Someone wrote 'ytick=data. We want the precise positions. % % Note that this check needs to be done late: it must % be after \begin{axis} -- and since many colorbar @@ -10494,16 +10574,16 @@ % Parses all options in #1 which are known in the currently active families. % -% The result will be stored back into the TikZ-style named #1 without +% The result will be stored back into the TikZ-style named #1 without % further processing. % % Example: % \tikzstyle{every axis}=[xmin=0,xmax=1,line width=1pt % \pgfplots@set@keys@from@tikz@style\tmpmacro{every axis}{/pgfplots} -% +% % - sets axis options 'xmin' and 'xmax' % - calls \tikzstyle{every axis}={line width=1pt} -% +% % I assume that this method is called within local TeX groups so % nothing will be destroyed outside. % @@ -10755,7 +10835,7 @@ % \pgfplots@set@options@of@layered@graphics % - % Now, any 'name' and 'alias' options have been processed. + % Now, any 'name' and 'alias' options have been processed. % % Remember their current meaning and reset the tikz options! \let\pgfplots@fig@name=\tikz@fig@name @@ -10824,7 +10904,7 @@ % \pgfkeysactivatefamily{/pgfplots}% % \pgfplots@set@keys@from@tikz@style{every axis plot}% % \pgfkeysdeactivatefamily{/pgfplots}% - %-------------------------------------------------- + %-------------------------------------------------- % % Attention: do NOT set the description styles here! Setting them % must be postponed until |every 3d description| has been set (to @@ -10874,7 +10954,7 @@ \pgfkeysifdefined{/tikz/on layer}{}{% % make sure assignments 'on layer' in the /tikz/ prefix % doesn't hurt. - % this may happen, for example with + % this may happen, for example with % 'x grid style={on layer=...}' % because 'x grid style' is not processed by the key filtering % above (it is extracted later). @@ -10939,7 +11019,7 @@ \pgfkeysifdefined{/tikz/name path/.@cmd}{% % 'name path' does not work inside of a pgfplots axis because % pgfplots unnecessarily introduces extra \scopes around each path :-/ - % it needs to be 'name path global'. + % it needs to be 'name path global'. % PATCH IT: \pgfkeysgetvalue{/tikz/name path global/.@cmd}\pgfplots@loc@TMPa% \ifx\pgfplots@loc@TMPa\pgfplots@name@path@global@cmd@pgf@two@ten @@ -11089,7 +11169,7 @@ % % This macro is used inside for \label{} / \ref{}; it tries to be % reasonable smart about restoring relevant flags stored in a pgfplots -% axis. If it forgets something... well, it is not too smart. +% axis. If it forgets something... well, it is not too smart. % % #1: the style to export. % #2: either empty or the fully qualified name of a code key. If #2 is not empty, @@ -11101,7 +11181,7 @@ % The exported routine autodetects whether the result is used inside of % a picture. In that case, the '#2' style will be set inside of a % scope instead of \tikz[#2]. -% +% % Assembles a macro \pgfplotsretval which, upon execution, draws the % plot style. % @@ -11189,9 +11269,9 @@ % The implementation for \label{foo} after \addplot. It allows to % \ref{foo} (it inserts the 'legend image code'). % -% With +% With % \addplot[scatter/classes={a={}}] ... ; -% \label[a]{my label} +% \label[a]{my label} % you can reference scatter/classes labels. % % I only need to overwrite '\label'; the rest is done by LaTeX. @@ -11231,7 +11311,7 @@ % % b) \protect . If the resulting \ref{} command occurs within % a "moving argument" like \caption or so, we need to use - % proper '\protect'ion. + % proper '\protect'ion. % % this here is the low-level implementation of \ref{#3}. Write it into % the .aux file: @@ -11265,14 +11345,14 @@ }% }% -% A helper method which defines +% A helper method which defines % `/tikz/current plot style' to be {#1} --- with properly set key % search paths. \def\pgfplots@define@currentplotstyle@as#1{% \pgfkeysdef{/tikz/current plot style}{% \pgfplots@search@also@tikz % - % Make sure that + % Make sure that % \addplot[every mark/.append style={...}] % or something like that is interpreted as /tikz/ key: \pgfplots@invoke@pgfkeyscode{/handler config/full or existing/.@cmd}{}% restrict @@ -11410,13 +11490,16 @@ \pgfplotsutil@directlua{% pgfplots.gca = pgfplots.Axis.new(); pgfplots.gca.is3d = \pgfplots@boolval{pgfplots@threedim}; - pgfplots.gca.clipLimits = \pgfplots@boolval{pgfplots@clip@limits}; + pgfplots.gca.clipLimits = { + \pgfplots@boolval{pgfplots@clip@limits@x}, + \pgfplots@boolval{pgfplots@clip@limits@y}, + \pgfplots@boolval{pgfplots@clip@limits@z} }; pgfplots.gca.autocomputeAllLimits = \pgfplots@boolval{pgfplots@autocompute@all@limits}; - pgfplots.gca.autocomputeMin = { + pgfplots.gca.autocomputeMin = { \pgfplots@boolval{pgfplots@autocompute@xmin}, \pgfplots@boolval{pgfplots@autocompute@ymin}, \pgfplots@boolval{pgfplots@autocompute@zmin} }; - pgfplots.gca.autocomputeMax = { + pgfplots.gca.autocomputeMax = { \pgfplots@boolval{pgfplots@autocompute@xmax}, \pgfplots@boolval{pgfplots@autocompute@ymax}, \pgfplots@boolval{pgfplots@autocompute@zmax} }; @@ -11449,14 +11532,14 @@ % until \end{axis}. During the collect phase, axis limits will be % computed. % -% The following variables are accummulated between +% The following variables are accummulated between % \begin{axis} % and % \end{axis}: % % - \pgfplots@[xyz]min % \pgfplots@[xyz]max -% - These denote the axis limits. +% - These denote the axis limits. % - They are always assigned globally. % - For linear axes, they will be computed in floating point. % - For log axes, they will be computed using pgf math engine. @@ -11550,11 +11633,11 @@ % (including the 'pt' suffix). % % - \ifpgfplots@curplot@threedim -% - valid during an '\addplot' preparation step. +% - valid during an '\addplot' preparation step. % - \ifpgfplots@threedim % - whether the axis shall be threedimensional. % -% - \pgfplots@currentplot@firstcoord@[xyz] +% - \pgfplots@currentplot@firstcoord@[xyz] % - \pgfplots@currentplot@lastcoord@[xyz] % - contains the first/last coordinate of the current plot. % - assigned globally. @@ -11747,16 +11830,38 @@ \pgfkeyslet{/pgfplots/on layer}\pgfutil@empty } -\def\pgfplots@set@options@after@survey{% - \pgfkeyssetvalue{/pgfplots/xmin}{\pgfplots@xmin}% - \pgfkeyssetvalue{/pgfplots/ymin}{\pgfplots@ymin}% - \pgfkeyssetvalue{/pgfplots/zmin}{\pgfplots@zmin}% - \pgfkeyssetvalue{/pgfplots/point meta min}{\pgfplots@axiswide@metamin}% +% #1 if and only if the limits are already ready (sanitized to bounded +% values and transformed) +\def\pgfplots@set@options@after@survey#1{% + \def\pgfplots@set@options@after@survey@@##1{% + \edef\pgfmathresult{\csname pgfplots@##1min\endcsname}% + \if1#1% + \pgfplotscoordmath{##1}{datascaletrafo inverse}{\pgfmathresult}% + \pgfplotscoordmath{##1}{tofixed}{\pgfmathresult}% + \else + % might be unbounded... + \pgfplotscoordmath{##1}{tostring}{\pgfmathresult}% + \fi + \pgfkeyslet{/pgfplots/##1min}\pgfmathresult + % + \edef\pgfmathresult{\csname pgfplots@##1max\endcsname}% + \if1#1% + \pgfplotscoordmath{##1}{datascaletrafo inverse}{\pgfmathresult}% + \pgfplotscoordmath{##1}{tofixed}{\pgfmathresult}% + \else + % might be unbounded... + \pgfplotscoordmath{##1}{tostring}{\pgfmathresult}% + \fi + \pgfkeyslet{/pgfplots/##1max}\pgfmathresult + }% + \pgfplots@set@options@after@survey@@ x% + \pgfplots@set@options@after@survey@@ y% + \ifpgfplots@threedim + \pgfplots@set@options@after@survey@@ z% + \fi % - \pgfkeyssetvalue{/pgfplots/xmax}{\pgfplots@xmax}% - \pgfkeyssetvalue{/pgfplots/ymax}{\pgfplots@ymax}% - \pgfkeyssetvalue{/pgfplots/zmax}{\pgfplots@zmax}% - \pgfkeyssetvalue{/pgfplots/point meta max}{\pgfplots@axiswide@metamax}% + \pgfkeyslet{/pgfplots/point meta min}{\pgfplots@axiswide@metamin}% + \pgfkeyslet{/pgfplots/point meta max}{\pgfplots@axiswide@metamax}% }% % \end{axis} : @@ -11778,7 +11883,7 @@ % \pgfplotssurveyphase@setactiveplothandlers % - \pgfplots@set@options@after@survey + \pgfplots@set@options@after@survey0% \expandafter\pgfplotsset\expandafter{\pgfplots@late@options}% % \pgfplots@prepare@layered@graphics @@ -11848,7 +11953,7 @@ % \pgfplots@create@axis@descriptions % - % this here does \endtikzpicture\endpgfinterruptpicture + % this here does \endtikzpicture\endpgfinterruptpicture % (and stores sizes): \pgfplots@END@cell@picture % @@ -11862,7 +11967,7 @@ \def\pgfplots@loc@TMPa##1{% \pgftransformshift{% % So far, the inner node's position has not been - % corrected (that happens in + % corrected (that happens in % \pgfplots@finally@correct@child@node@positions). % Do that here with \pgfplots@saveddimen@picminx: \pgfpointdiff @@ -11965,9 +12070,9 @@ { \pgf@sys@tonumber\pgf@yx, \pgf@sys@tonumber\pgf@yy }, { \pgf@sys@tonumber\pgf@zx, \pgf@sys@tonumber\pgf@zy } });^^J% \ifpgfplots@threedim - axis.viewdir = { + axis.viewdir = { pgfplots.pgftonumber("\pgfplots@loc@x"), - pgfplots.pgftonumber("\pgfplots@loc@y"), + pgfplots.pgftonumber("\pgfplots@loc@y"), pgfplots.pgftonumber("\pgfplots@loc@z") };^^J% \fi }% @@ -12073,6 +12178,7 @@ % expanded, i.e. it can be a macro. \def\pgfplots@stored@plotlist@visualize@selected@phases#1{% \begingroup + \def\pgfplotsaxisplotphase{V}% \pgfplotsonlayer{\pgfkeysvalueof{/pgfplots/on layer}}{a plot or graphical element (or inherited from the axis)}% \pgfkeysvalueof{/pgfplots/execute at begin plot visualization}% \ifpgfplots@threedim @@ -12239,7 +12345,7 @@ \pgfplots@polarxy@#2\@@% \else% \pgfplots@polarxy@#2and #2\@@% - \fi% + \fi% \pgfmathparse{#1}% \let\pgfpoint@angle=\pgfmathresult% \pgfmathcos@{\pgfpoint@angle}% @@ -12264,8 +12370,8 @@ % see docs of \pgfplots@tikz@do@arc for a motivation: \pgfplots@disable@directionmath % - % ok, now, evaluate the arcs. Since this implements - % 'substitute pgfpoint', we have to evaluate the angles via + % ok, now, evaluate the arcs. Since this implements + % 'substitute pgfpoint', we have to evaluate the angles via % 'axis direction cs' ... \let\pgfpointxy=\pgfplotspointaxisdirectionxy \let\pgfpointxyz=\pgfplotspointaxisdirectionxyz @@ -12414,7 +12520,7 @@ }% % Replaces the pdfmark for #1 by that of #2. -% +% % Note that when this macro is executed (it resides in the .aux file), % the pdfmark for #2 is typically UNDEFINED. % @@ -12428,7 +12534,7 @@ % Ok, make a "lazy replace": \expandafter\let\expandafter\pgfplots@glob@TMPa\csname pgf@sys@pdf@mark@pos@#1\endcsname \expandafter\global\expandafter\let\csname pgf@sys@pdf@mark@pos@#1@old\endcsname=\pgfplots@loc@TMPa% - % + % \expandafter\gdef\csname pgf@sys@pdf@mark@pos@#1\endcsname{% % this is the lazy replace, assuming knowledge about how % pgf calls its internal structures :-/ |