%D \module %D [ file=m-graph, %D version=2008.09.08, %D title=\CONTEXT\ Extra Modules, %D subtitle=\METAPOST\ graph module support, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. % We just assume lua specification instead of the graph ones that % are limited by what mp can do. We support @ as replacement for % the percent symbol. We also add a specifier when no one is given. \unprotect \defineMPinstance [graph] [\s!format=metafun, \s!extensions=\v!yes, \s!initializations=\v!yes, \c!method=\s!double] \startMPdefinitions{graph} loadmodule "grap" ; % input mp-grap.mpiv ; \stopMPdefinitions \protect \continueifinputfile{m-graph.mkiv} %D We put this test here as in \type {meta-tex.mkiv} it would abort due to redefinition %D of namespaces. \starttext \startMPpage[instance=graph] label.rt(format("@g","1e-8"), (0, 0)) ; label.rt(format("@g","1e+8"), (2cm, 0)) ; label.rt(format("@g","1e-10"), (0, -0.5cm)) ; label.rt(format("@g","1e+10"), (2cm,-0.5cm)) ; label.rt(format("@g","1e-12"), (0, -1.0cm)) ; label.rt(format("@g","1e+12"), (2cm,-1.0cm)) ; label.rt(format("@g","1e-0"), (0, -1.5cm)) ; label.rt(format("@g","1e+0"), (2cm,-1.5cm)) ; label.rt(format("@g","1"), (0, -2.0cm)) ; label.rt(format("@g","1"), (2cm,-2.0cm)) ; label.rt(format("@g","1e-102"),(0, -2.5cm)) ; label.rt(format("@g","1e+102"),(2cm,-2.5cm)) ; currentpicture := currentpicture shifted (-4cm,0) ; % label.rt(format("@j","1e-8"), (0, 0)) ; label.rt(format("@j","1e+8"), (2cm, 0)) ; label.rt(format("@j","1e-10"), (0, -0.5cm)) ; label.rt(format("@j","1e+10"), (2cm,-0.5cm)) ; label.rt(format("@j","1e-12"), (0, -1.0cm)) ; label.rt(format("@j","1e+12"), (2cm,-1.0cm)) ; label.rt(format("@j","1e-0"), (0, -1.5cm)) ; label.rt(format("@j","1e+0"), (2cm,-1.5cm)) ; label.rt(format("@j","1"), (0, -2.0cm)) ; label.rt(format("@j","1"), (2cm,-2.0cm)) ; label.rt(format("@j","1e-102"),(0, -2.5cm)) ; label.rt(format("@j","1e+102"),(2cm,-2.5cm)) ; label.rt(formatted("(@f,@f)",(1.23,4.56)),(0cm,-3.0cm)) ; label.rt(formatted("(@i,@i)",(1.23,4.56)),(0cm,-3.5cm)) ; label.rt(formatted("(@g,@g)",(1.23,4.56)),(0cm,-4.0cm)) ; label.rt(formatted("(@e,@e)",(1.23,4.56)),(0cm,-4.5cm)) ; label.rt(formatted("(@j,@j)",(1.23,4.56)),(0cm,-5.0cm)) ; \stopMPpage % \startMPpage[instance=graph] % draw begingraph(3in,2in); % gdraw "t:/metapost/grphdata/agepop91.d"; % endgraph; % \stopMPpage % \startMPpage[instance=graph] % draw begingraph(3in,2in); % gdraw "agepop91.d" plot btex $\bullet$ etex; % endgraph; % \stopMPpage % \startMPpage[instance=graph] % draw begingraph(3in,2in); % glabel.lft(btex \vbox{\hbox{Population} \hbox{in millions}} etex, OUT); % glabel.bot(btex Age in years etex, OUT); % gdraw "agepopm.d"; % endgraph; % \stopMPpage % \startMPpage[instance=graph] % draw begingraph(3in,2in); % glabel.lft(btex \vbox{\hbox{Population} \hbox{in millions}} etex, OUT); % glabel.bot(btex Age in years etex, OUT); % setrange(origin, whatever,whatever); % gdraw "agepopm.d"; % endgraph; % \stopMPpage % \startMPpage[instance=graph] % draw begingraph(2.3in,2in); % setcoords(log,log); % glabel.lft(btex Seconds etex,OUT); % glabel.bot(btex Matrix size etex, % OUT); % gdraw "matmul.d" dashed evenly; % glabel.ulft(btex Standard etex,8); % gdraw "matmul.d"; % glabel.lrt(btex Strassen etex,7); % endgraph; % \stopMPpage % \startMPpage[instance=graph] % draw begingraph(6.5cm,4.5cm); % setrange(80,0, 90,whatever); % glabel.bot(btex Year etex, OUT); % glabel.lft(btex \vbox{\hbox{Emissions in} \hbox{thousands of} % \hbox{metric tons} \hbox{(heavy line)}}etex, OUT); % gdraw "lead.d" withpen pencircle scaled 1.5pt; % autogrid(,otick.lft); % setcoords(linear,linear); % setrange(80,0, 90,whatever); % glabel.rt(btex \vbox{\hbox{Micrograms} \hbox{per cubic} % \hbox{meter of air} \hbox{(thin line)}}etex, OUT); % gdraw "lead.d"; % autogrid(otick.bot,otick.rt); % endgraph; % \stopMPpage \stoptext