diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgfplots/libs')
7 files changed, 124 insertions, 252 deletions
diff --git a/Master/texmf-dist/tex/generic/pgfplots/libs/pgflibrarypgfplots.surfshading.code.tex b/Master/texmf-dist/tex/generic/pgfplots/libs/pgflibrarypgfplots.surfshading.code.tex index c45b5a613f0..63f24068c41 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/libs/pgflibrarypgfplots.surfshading.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/libs/pgflibrarypgfplots.surfshading.code.tex @@ -56,6 +56,13 @@ /pgfplots/surf shading/north east corner/.initial={\pgfqpoint{6cm}{6cm}},% /pgfplots/surf shading/anchor/.initial=\pgfpointorigin,% /pgfplots/surf shading/shading type/.initial=5,% triangles in form of lattice + % + % can only have values '' (empty) for binary encoding or + % ASCIIHexEncode for base 16 encoding. Use this if some driver + % cannot produce binary encoding. This is undocumented; for use in + % emergency only. + /pgfplots/surf shading/pdf stream filter/.initial=,% + % /pgfplots/surf shading/precision/.is choice, /pgfplots/surf shading/precision/pdf/.code={% % Lossless coordinate output. @@ -129,7 +136,15 @@ \newcount\c@pgfplotslibrarysurf@no % driver specific: -\def\pgfplotslibrarysurf@initstream{} +\def\pgfplotslibrarysurf@initstream{% + \edef\pgfplots@loc@TMPa{\pgfkeysvalueof{/pgfplots/surf shading/pdf stream filter}}% + \ifx\pgfplots@loc@TMPa\pgfutil@empty + \else + \let\pgfplotslibrarysurf@filter@encode=\pgfplots@loc@TMPa + \let\pgfplotslibrarysurf@filter@decode=\pgfplotslibrarysurf@filter@encode + \fi +} + \def\pgfplotslibrarysurf@advancestreamlen#1{}% \def\pgfplotslibrarysurfstreamstart{% @@ -139,9 +154,9 @@ \pgfplotsapplistXglobalnewempty\pgfplotslibrarysurf@binarystream@accum \pgfplotslibrarysurf@initstream \ifx\pgfplotslibrarysurf@filter@encode\pgfutil@empty - \else - \pgfkeysalso{/pgfplots/bin/\pgfplotslibrarysurf@filter@encode}% + \def\pgfplotslibrarysurf@filter@encode{binary encoding}% \fi + \pgfkeysalso{/pgfplots/bin/\pgfplotslibrarysurf@filter@encode}% \ifcase\pgfplotslibrarysurf@type\relax % 0 \pgfplotslibrarysurf@initstream@wrongtype @@ -172,7 +187,7 @@ \fi }% \def\pgfplotslibrarysurf@initstream@wrongtype{% - \pgfplots@error{CRITICAL: shader=interp: got unsupported pdf shading type '\pgfplotslibrarysurf@type'. This may correct your pdf!}% + \pgfplots@error{CRITICAL: shader=interp: got unsupported pdf shading type '\pgfplotslibrarysurf@type'. This may corrupt your pdf!}% }% \def\pgfplotslibrarysurfstreamend{% \pgfplotsapplistXgloballet\pgfplotslibrarysurf@binarystream=\pgfplotslibrarysurf@binarystream@accum diff --git a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.dateplot.code.tex b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.dateplot.code.tex index 7e7e5232fc0..146153fca9b 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.dateplot.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.dateplot.code.tex @@ -134,8 +134,9 @@ \endgroup }% \pgfkeysdef{/pgfplots/#1 coord inv trafo}{% + \edef\pgfplotstempjuliandatenumeric{##1}% \begingroup - \pgfplotslibdateplot@number@to@julian@and@time##1\julianto{\c@pgf@counta}\hourto\Hour\minuteto\Minute% + \expandafter\pgfplotslibdateplot@number@to@julian@and@time\pgfplotstempjuliandatenumeric\julianto{\c@pgf@counta}\hourto\Hour\minuteto\Minute% \advance\c@pgf@counta by\pgfplots@calender@ZEROSHIFT\relax \expandafter\pgfcalendarjuliantodate\expandafter{\the\c@pgf@counta}\year\month\day \xdef\pgfplotslibdateplot@TMP{% diff --git a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.external.code.tex b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.external.code.tex index 227f5c1a5a4..4923e310c5b 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.external.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.external.code.tex @@ -32,8 +32,18 @@ % \pgfplotsiffileexists{tikzlibraryexternal.code.tex}{% - \usetikzlibrary{external}% + \pgfplots@ifneedspgfcompabitibilitycode@has@pgf@one@zero@zero{% + \def\pgfplots@glob@TMPa{0}% + }{% + \def\pgfplots@glob@TMPa{1}% + }% }{% + \def\pgfplots@glob@TMPa{0}% +}% +\if1\pgfplots@glob@TMPa + \usetikzlibrary{external}% +\else + \immediate\write16{Package pgfplots external lib: loading complementary code for your PGF version...} % Backwards compatibility: \let\pgfplots@backw@compat@AtBeginDocument=\AtBeginDocument \def\AtBeginDocument#1{}% @@ -41,6 +51,6 @@ \let\AtBeginDocument=\pgfplots@backw@compat@AtBeginDocument % \input pgfplotsoldpgfsupp_tikzlibraryexternal.code.tex -}% +\fi \endinput diff --git a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.patchplots.code.tex b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.patchplots.code.tex index f3e4674f9e6..79990ec1fb8 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.patchplots.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.patchplots.code.tex @@ -888,7 +888,7 @@ \divide\pgf@ya by4 \divide\pgf@yb by4 \pgfplotscoordmath{meta}{op}{multiply}{{\pgfmathresult}{\pgfplots@loc@scale}}% - \edef\pgfplotspatchclass@rect@M{{\the\pgf@xa}{\the\pgf@ya}{\pgfmathresult}\ifx\pgfplotspatchvertexdepth\pgfutil@empty\else \pgf@sys@tonumber\pgf@yb\fi}% + \edef\pgfplotspatchclass@rect@M{{\the\pgf@xa}{\the\pgf@ya}{\pgfmathresult}\ifx\pgfplotspatchvertexdepth\pgfutil@empty\else \pgf@sys@tonumber\pgf@yb\fi:}% % \let\pgfplotsplothandlermesh@patchclass@=\pgfplotsplothandlermesh@patchclass \def\pgfplotsplothandlermesh@patchclass{triangle}% diff --git a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.polar.code.tex b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.polar.code.tex index 24292d1354c..2e6f13df3e0 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.polar.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.polar.code.tex @@ -71,6 +71,7 @@ \let\pgfplots@prepare@axis@API=\pgfplots@prepare@axis@API@polar \def\axisdefaultheight{\axisdefaultwidth}% \let\pgfplots@initsizes=\pgfplots@initsizes@polar + \let\pgfplots@BB@for@plotbox@get@unit@scales@for@limits=\pgfplots@BB@for@plotbox@get@unit@scales@for@limits@polar \let\pgfplots@limits@ready=\pgfplots@limits@ready@polar \let\pgfplots@assign@default@tick@foraxis@normalizetickdist=\pgfplots@assign@default@tick@foraxis@normalizetickdist@polar \let\pgfplots@show@ticklabel@=\pgfplots@show@ticklabel@@polar @@ -476,6 +477,8 @@ \fi }% +\let\pgfplots@initsizes@original=\pgfplots@initsizes + \def\pgfplots@initsizes@polar{% % I copy-pasted most of this code, up to just one position where % I introduced the modified scaling for polar axes @@ -493,119 +496,35 @@ \def\b@pgfplots@polar@limit@around@zero{1}% \fi % - \pgfplots@xmin@reg=\pgfplots@xmin pt % - \pgfplots@xmax@reg=\pgfplots@xmax pt % - % - % - \pgfplots@ymin@reg=\pgfplots@ymin pt % - \pgfplots@ymax@reg=\pgfplots@ymax pt % - \ifpgfplots@threedim - \pgfplots@zmin@reg=\pgfplots@zmin pt % - \pgfplots@zmax@reg=\pgfplots@zmax pt % - \fi - % - % - %----------------------------------------- - % PROCESS THE 'width' and 'height' options - %----------------------------------------- - % - % - \pgfkeysgetvalue{/pgfplots/view/az}{\pgfplots@view@az}% - \pgfkeysgetvalue{/pgfplots/view/el}{\pgfplots@view@el}% - \ifpgfplots@threedim - \def\pgfplots@tmpZscale{1pt}% - \else - \def\pgfplots@tmpZscale{0pt}% - \let\pgfplots@view@el=\pgfutil@empty - \let\pgfplots@view@az=\pgfutil@empty - \fi - \ifx\pgfplots@view@az\pgfutil@empty - %\let\pgfplots@rectangle@width=\pgfutil@empty - %\let\pgfplots@rectangle@height=\pgfutil@empty - \def\pgfplots@view@dir@threedim@x{0}% - \def\pgfplots@view@dir@threedim@y{0}% - \def\pgfplots@view@dir@threedim@z{1}% - % - % FIXME HERE COMES THE polar MODIFICATION - %-------------------------------------------------- - % \pgfpointdiff - % {\pgfplotsqpointxy{\pgfplots@xmin}{\pgfplots@ymin}} - % {\pgfplotsqpointxy{\pgfplots@xmax}{\pgfplots@ymax}}% - %-------------------------------------------------- - % instead of scaling from (min) (max), we only need the UPPER - % bound -- in both, x and y directions (since we have a cycle. - % Furthermore, we need it twice since we are interested in the - % diameter, not the radius. - \global\pgf@x=\pgfplots@ymax pt % radius - \global\multiply\pgf@x by2 % diameter - \global\pgf@y=\pgf@x % same for y - % - % only used temporarily in this macro to compute the correct - % length for unit vectors: - \edef\pgfplots@initsizes@axisdiag@x{\the\pgf@x}% - \edef\pgfplots@initsizes@axisdiag@y{\the\pgf@y}% - % - \ifx\pgfplots@x\pgfutil@empty - \ifx\pgfplots@width\pgfutil@empty - \pgfplots@error{INTERNAL LOGIC ERROR! WIDTH NOT SET}% - \fi - \pgfplots@initsizes@getXscale\pgfplots@initsizes@axisdiag@x\into\pgfplots@tmpXscale - %\ifpgfplots@scale@only@axis - % \let\pgfplots@rectangle@width=\pgfplots@width - %\fi - \else - \def\pgfplots@tmpXscale{1}% - \fi - % - \ifx\pgfplots@y\pgfutil@empty - \ifx\pgfplots@height\pgfutil@empty - \pgfplots@error{INTERNAL LOGIC ERROR! HEIGHT NOT SET}% - \fi - \pgfplots@initsizes@getYscale\pgfplots@initsizes@axisdiag@y\into\pgfplots@tmpYscale - %\ifpgfplots@scale@only@axis - % \let\pgfplots@rectangle@height=\pgfplots@height - %\fi - \else - \def\pgfplots@tmpYscale{1}% - \fi + \pgfplots@initsizes@original +}% + +\def\pgfplots@BB@for@plotbox@get@unit@scales@for@limits@polar#1#2#3{% + % #1 is the angle ... and that does not need to be squeezed into + % the box. + % + % use only y (the radius). + \if1\b@pgfplots@plotbox@yisunit + % we do not need to compute max-min as for standard axes (because the inner part + % characterized by ymin does not enter the scaling). % - \edef\pgfplots@tmpXscale{\pgfplots@tmpXscale pt}% - \edef\pgfplots@tmpYscale{\pgfplots@tmpYscale pt}% + % However, we have to keep in mind that our range is TWICE as + % large because [0,ymax] is just a radius, and we have to + % scale for the diameter. + \pgfplotscoordmath{\pgfplots@compat@scaling@coordmath}{parsenumber}{2}% + \let\pgfplots@loc@TMPa=\pgfmathresult % - \pgfplots@initsizes@setunitvector{x}{0}{\pgfplots@tmpXscale}{\pgfplots@tmp@xisaxisparallel}% - \pgfplots@initsizes@setunitvector{y}{1}{\pgfplots@tmpYscale}{\pgfplots@tmp@yisaxisparallel}% - \pgfplots@initsizes@setunitvector{z}{2}{\pgfplots@tmpZscale}{\pgfplots@loc@TMPc}% - \else - % 3D case is currently always initialised by `view': - \let\pgfplots@x=\pgfutil@empty - \let\pgfplots@y=\pgfutil@empty - \let\pgfplots@z=\pgfutil@empty - \pgfplotssetaxesfromazel{\pgfplots@view@az}{\pgfplots@view@el}{\pgfplots@tmp@xisaxisparallel}% - \if1\pgfplots@tmp@xisaxisparallel% - \def\pgfplots@tmp@yisaxisparallel{1}% - \fi - \fi -%\message{Pgfplots debug: initialised unit vectors to x=(\the\pgf@xx,\the\pgf@xy), y=(\the\pgf@yx,\the\pgf@yy), z=(\the\pgf@zx,\the\pgf@zy). }% - % - \let\pgfplotsmathfloatviewdepthxyz@=\pgfplotsmathfloatviewdepthxyz@infigure - \let\pgfplotsmathviewdepthxyz@=\pgfplotsmathviewdepthxyz@infigure - % - \pgfplotsmath@ifzero{\pgfplots@x@veclength}{\pgfplots@hide@xtrue\pgfplots@shownothingof@xtrue}{}% - \pgfplotsmath@ifzero{\pgfplots@y@veclength}{\pgfplots@hide@ytrue\pgfplots@shownothingof@ytrue}{}% - \ifpgfplots@threedim - \pgfplotsmath@ifzero{\pgfplots@z@veclength}{\pgfplots@hide@ztrue\pgfplots@shownothingof@ztrue}{}% + \let\pgfmathresult=\pgfplots@ymax + \pgfplotscoordmath{\pgfplots@compat@scaling@coordmath}{parsenumber}{\pgfmathresult}% + \pgfplotscoordmath{\pgfplots@compat@scaling@coordmath}{op}{multiply}{{\pgfmathresult}{\pgfplots@loc@TMPa}}% + \pgfplotscoordmath{\pgfplots@compat@scaling@coordmath}{tofixed}{\pgfmathresult}% \else - \if1\pgfplots@tmp@xisaxisparallel% - \if1\pgfplots@tmp@yisaxisparallel% - % Optimize for axis-parallel case! - % puh. Did not make any measureable difference!? Ok... - \let\pgfplotsqpointxy=\pgfplotsqpointxy@orthogonal - \fi - \fi + \def\pgfmathresult{2}% not 1: the factor 2 is for 2*radius \fi - % - % FIXME : unit vector ratio / axis equal -} + \let#1=\pgfmathresult + \let#2=\pgfmathresult + \def#3{1}% FIXME : z ? +}% \def\pgfplots@handle@invalid@range@defaultlimits@polar{% \def\pgfplots@loc@TMPa{0}% diff --git a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.smithchart.code.tex b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.smithchart.code.tex index 7d24c53216d..e1561bb96ac 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.smithchart.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.smithchart.code.tex @@ -213,6 +213,30 @@ %font=\tiny, } }, + yticklabel around circle/.style={ + ytick align=center, + yticklabel style={ + rotate=90, + sloped like y axis={% + execute for upside down={\tikzset{anchor=south west}}, + %allow upside down, + reset nontranslations=false}, + anchor=south east, + %font=\tiny, + } + }, + yticklabel around circle*/.style={ + ytick align=center, + yticklabel style={ + rotate=90, + sloped like y axis={% + execute for upside down={\tikzset{anchor=north west}}, + %allow upside down, + reset nontranslations=false}, + anchor=north east, + %font=\tiny, + } + } } \def\pgfplots@smithchartaxis@activate{% @@ -259,7 +283,7 @@ \fi }% \def\axisdefaultheight{\axisdefaultwidth}% - \let\pgfplots@initsizes=\pgfplots@initsizes@smithchart + \let\pgfplots@BB@for@plotbox@get@unit@scales@for@limits=\pgfplots@BB@for@plotbox@get@unit@scales@for@limits@smithchart %\let\pgfplots@limits@ready=\pgfplots@limits@ready@smithchart %\let\pgfplots@show@ticklabel@=\pgfplots@show@ticklabel@@smithchart %\def\pgfplots@xtick@disable@last@tick{0}% @@ -1513,134 +1537,17 @@ \fi }% -\def\pgfplots@initsizes@smithchart{% - % I copy-pasted most of this code, up to just one position where - % I introduced the modified scaling for smithchart axes - %---------------------------------- - % INIT. - % - % - \def\pgfplots@minmax@reg@forbidden{\pgfplots@error{Sorry, an internal logic error occured during smithchart processing (a routine tried to access \string\pgfplots@xmin@reg\space or its variants). Please report this as bug, sorry}}% - \iffalse - \pgfplots@xmin@reg=\pgfplots@xmin pt % - \pgfplots@xmax@reg=\pgfplots@xmax pt % - \pgfplots@ymin@reg=\pgfplots@ymin pt % - \pgfplots@ymax@reg=\pgfplots@ymax pt % - \ifpgfplots@threedim - \pgfplots@zmin@reg=\pgfplots@zmin pt % - \pgfplots@zmax@reg=\pgfplots@zmax pt % - \fi - \else - \let\pgfplots@xmin@reg=\pgfplots@minmax@reg@forbidden - \let\pgfplots@xmax@reg=\pgfplots@minmax@reg@forbidden - \let\pgfplots@ymin@reg=\pgfplots@minmax@reg@forbidden - \let\pgfplots@ymax@reg=\pgfplots@minmax@reg@forbidden - \let\pgfplots@zmin@reg=\pgfplots@minmax@reg@forbidden - \let\pgfplots@zmax@reg=\pgfplots@minmax@reg@forbidden - \fi - % - % - %----------------------------------------- - % PROCESS THE 'width' and 'height' options - %----------------------------------------- - % - % - \pgfkeysgetvalue{/pgfplots/view/az}{\pgfplots@view@az}% - \pgfkeysgetvalue{/pgfplots/view/el}{\pgfplots@view@el}% - \ifpgfplots@threedim - \def\pgfplots@tmpZscale{1pt}% - \else - \def\pgfplots@tmpZscale{0pt}% - \let\pgfplots@view@el=\pgfutil@empty - \let\pgfplots@view@az=\pgfutil@empty - \fi - \ifx\pgfplots@view@az\pgfutil@empty - %\let\pgfplots@rectangle@width=\pgfutil@empty - %\let\pgfplots@rectangle@height=\pgfutil@empty - \def\pgfplots@view@dir@threedim@x{0}% - \def\pgfplots@view@dir@threedim@y{0}% - \def\pgfplots@view@dir@threedim@z{1}% - % - % FIXME HERE COMES THE smithchart MODIFICATION - %-------------------------------------------------- - % \pgfpointdiff - % {\pgfplotsqpointxy{\pgfplots@xmin}{\pgfplots@ymin}} - % {\pgfplotsqpointxy{\pgfplots@xmax}{\pgfplots@ymax}}% - %-------------------------------------------------- - % instead of scaling from (min) (max), we only need the UPPER - % bound -- in both, x and y directions (since we have a cycle. - % Furthermore, we need it twice since we are interested in the - % diameter, not the radius. - \global\pgf@x=2 pt % radius - \global\pgf@y=\pgf@x % same for y - % - % only used temporarily in this macro to compute the correct - % length for unit vectors: - \edef\pgfplots@initsizes@axisdiag@x{\the\pgf@x}% - \edef\pgfplots@initsizes@axisdiag@y{\the\pgf@y}% - % - \ifx\pgfplots@x\pgfutil@empty - \ifx\pgfplots@width\pgfutil@empty - \pgfplots@error{INTERNAL LOGIC ERROR! WIDTH NOT SET}% - \fi - \pgfplots@initsizes@getXscale\pgfplots@initsizes@axisdiag@x\into\pgfplots@tmpXscale - %\ifpgfplots@scale@only@axis - % \let\pgfplots@rectangle@width=\pgfplots@width - %\fi - \else - \def\pgfplots@tmpXscale{1}% - \fi - % - \ifx\pgfplots@y\pgfutil@empty - \ifx\pgfplots@height\pgfutil@empty - \pgfplots@error{INTERNAL LOGIC ERROR! HEIGHT NOT SET}% - \fi - \pgfplots@initsizes@getYscale\pgfplots@initsizes@axisdiag@y\into\pgfplots@tmpYscale - %\ifpgfplots@scale@only@axis - % \let\pgfplots@rectangle@height=\pgfplots@height - %\fi - \else - \def\pgfplots@tmpYscale{1}% - \fi - % - \edef\pgfplots@tmpXscale{\pgfplots@tmpXscale pt}% - \edef\pgfplots@tmpYscale{\pgfplots@tmpYscale pt}% - % - \pgfplots@initsizes@setunitvector{x}{0}{\pgfplots@tmpXscale}{\pgfplots@tmp@xisaxisparallel}% - \pgfplots@initsizes@setunitvector{y}{1}{\pgfplots@tmpYscale}{\pgfplots@tmp@yisaxisparallel}% - \pgfplots@initsizes@setunitvector{z}{2}{\pgfplots@tmpZscale}{\pgfplots@loc@TMPc}% - \else - % 3D case is currently always initialised by `view': - \let\pgfplots@x=\pgfutil@empty - \let\pgfplots@y=\pgfutil@empty - \let\pgfplots@z=\pgfutil@empty - \pgfplotssetaxesfromazel{\pgfplots@view@az}{\pgfplots@view@el}{\pgfplots@tmp@xisaxisparallel}% - \if1\pgfplots@tmp@xisaxisparallel% - \def\pgfplots@tmp@yisaxisparallel{1}% - \fi - \fi -%\message{Pgfplots debug: initialised unit vectors to x=(\the\pgf@xx,\the\pgf@xy), y=(\the\pgf@yx,\the\pgf@yy), z=(\the\pgf@zx,\the\pgf@zy). }% - % - \let\pgfplotsmathfloatviewdepthxyz@=\pgfplotsmathfloatviewdepthxyz@infigure - \let\pgfplotsmathviewdepthxyz@=\pgfplotsmathviewdepthxyz@infigure - % - \pgfplotsmath@ifzero{\pgfplots@x@veclength}{\pgfplots@hide@xtrue\pgfplots@shownothingof@xtrue}{}% - \pgfplotsmath@ifzero{\pgfplots@y@veclength}{\pgfplots@hide@ytrue\pgfplots@shownothingof@ytrue}{}% - \ifpgfplots@threedim - \pgfplotsmath@ifzero{\pgfplots@z@veclength}{\pgfplots@hide@ztrue\pgfplots@shownothingof@ztrue}{}% - \else - \if1\pgfplots@tmp@xisaxisparallel% - \if1\pgfplots@tmp@yisaxisparallel% - % Optimize for axis-parallel case! - % puh. Did not make any measureable difference!? Ok... - \let\pgfplotsqpointxy=\pgfplotsqpointxy@orthogonal - \fi - \fi - \fi - % - % FIXME : unit vector ratio / axis equal - % -} +\def\pgfplots@BB@for@plotbox@get@unit@scales@for@limits@smithchart#1#2#3{% + % In a smith chart, the size of the image is unrelated to the + % involved data limits. + % + % The factor 2 is because we want to fit the DIAMETER into the + % prescribed dimensions, not just the radius. + \def\pgfmathresult{2}% + \let#1=\pgfmathresult + \let#2=\pgfmathresult + \def#3{1}% +}% \def\pgfplots@handle@invalid@range@defaultlimits@smithchart{% \pgfplotscoordmath{x}{parsenumber}{0}% diff --git a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex index dfb520af190..7000f8c13cf 100644 --- a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex +++ b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex @@ -86,11 +86,14 @@ \def\pgfplots@drawaxis@innerlines@onorientedsurf##1##2##3{}% \let\pgfplots@draw@axis@post=\pgfplots@draw@axis@post@ternary \let\pgfplots@initsizes=\pgfplots@initsizes@ternary + \let\pgfplots@limits@ready=\pgfplots@limits@ready@ternary \let\pgfplotspoint@initialisation@axes=\pgfplotspoint@initialisation@axes@ternary \let\pgfplotspoint@initialisation@units=\pgfplotspoint@initialisation@units@ternary \let\pgfplots@initsizes@setunitvector=\pgfplots@initsizes@setunitvector@ternary + \let\pgfplots@computeunitvectorlengths=\pgfplots@computeunitvectorlengths@ternary \let\pgfplotspointouternormalvectorofaxis@=\pgfplotspointouternormalvectorofaxis@ternary \let\pgfplots@prepare@ZERO@coordinates=\pgfplots@prepare@ZERO@coordinates@ternary + \def\pgfplots@scaleaxes@to@BB@##1##2{}% \let\pgfplotsgetnormalforcurrentview=\relax \def\pgfplots@drawtickgridlines@INSTALLCLIP@onorientedsurf##1{}% \let\pgfplots@clippath@prepare@for@axistype=\pgfplots@clippath@prepare@for@axistype@ternary @@ -280,10 +283,6 @@ \else \pgfplots@error{Sorry, 'axis type=ternary' needs a three dimensional axes. Make sure you supplied three dimensional coordinates (using \string\addplot3, for example). This error is critical; I can't recover}% \fi -%\message{ternary with limits x=[\pgfplots@xmin:\pgfplots@xmax], y=[\pgfplots@ymin:\pgfplots@ymax]; z=[\pgfplots@zmin:\pgfplots@zmax].}% - \pgfplots@ternary@init@map@to@unit x - \pgfplots@ternary@init@map@to@unit y - \pgfplots@ternary@init@map@to@unit z % \pgfplots@initsizes@get@width@withoutlabels \pgf@x=\pgfmathresult @@ -293,6 +292,17 @@ % }% +\let\pgfplots@limits@ready@original=\pgfplots@limits@ready + +\def\pgfplots@limits@ready@ternary{% + \pgfplots@limits@ready@original + % +%\message{ternary with limits x=[\pgfplots@xmin:\pgfplots@xmax], y=[\pgfplots@ymin:\pgfplots@ymax]; z=[\pgfplots@zmin:\pgfplots@zmax].}% + \pgfplots@ternary@init@map@to@unit x% + \pgfplots@ternary@init@map@to@unit y% + \pgfplots@ternary@init@map@to@unit z% +}% + \def\pgfplots@ternary@init@map@to@unit#1{% \begingroup \pgfmath@basic@subtract@ @@ -311,7 +321,7 @@ \def\pgfplots@initsizes@setunitvector@ternary#1#2#3#4{% % ternary axis are DIFFERENT here. % They don't use the (xx,xy), (yx,yy), (zx,zy) vectors, so we can - % use them to realize *cartesian* coordinates. + % use them to implement *cartesian* coordinates. % % Thus, any \draw (0,0) inside of a ternary axis will yield % cartesian coordinates. @@ -343,6 +353,17 @@ {\global\pgfplots@ternary@next@is@unitintervaltrue\pgfplotsqpointxyz@ternary001}% \fi \expandafter\xdef\csname pgfplotspoint#1axis\endcsname{\noexpand\pgf@x=\the\pgf@x\space\noexpand\pgf@y=\the\pgf@y\space}% + % +%\message{-> got unitvector(#1) = (\the\csname pgf@#1x\endcsname, \the\csname pgf@#1y\endcsname).}% +}% + +\def\pgfplots@computeunitvectorlengths@ternary{% + \pgfplots@computeunitvectorlengths@ternary@ x% + \pgfplots@computeunitvectorlengths@ternary@ y% + \pgfplots@computeunitvectorlengths@ternary@ z% +} +\def\pgfplots@computeunitvectorlengths@ternary@#1{% + \csname pgfplotspoint#1axis\endcsname \pgfmathveclen{\pgf@x}{\pgf@y}% \expandafter\let\csname pgfplots@#1@veclength\endcsname=\pgfmathresult \pgfplotsmath@ifzero{\pgfmathresult}{% @@ -353,7 +374,6 @@ }% \expandafter\xdef\csname pgfplotspoint#1axislength\endcsname{\pgfplots@x@veclength pt}% % -%\message{-> got unitvector(#1) = (\the\csname pgf@#1x\endcsname, \the\csname pgf@#1y\endcsname).}% }% \newif\ifpgfplots@ternary@next@is@unitinterval |