Changes

Jump to navigation Jump to search
Here I will collect some tex snippets,
just to show some ideas.
 
== Scipy ==
<texcode>
\startluacode
function testSCIPY(figname,dpi)
require("python")
pg = python.globals()
python.apply = python.eval('apply') or {}
np = python.import("numpy")
mlab = python.import("matplotlib.mlab")
griddata = mlab.griddata
plt = python.import("matplotlib.pyplot")
ma = np.ma
random = python.import("numpy.random")
uniform = random.uniform
 
-- make up some randomly distributed data
npts = 200
x = uniform(-2,2,npts)
y = uniform(-2,2,npts)
-- z = x*np.exp(-x**2-y**2)
z = x.__mul__( np.exp( (x.__pow__(2).__add__(y.__pow__(2))).__neg__() ) )
-- define grid.
xi = np.linspace(-2.1,2.1,100)
yi = np.linspace(-2.1,2.1,100)
-- grid the data.
zi = griddata(x,y,z,xi,yi)
-- contour the gridded data, plotting dots at the randomly spaced data points.
-- we put this in python globals space
-- CS = plt.contour(xi,yi,zi,15,linewidths=0.5,colors='k')
pg.xi = xi ; pg.yi = yi ; pg.zi = zi
args = python.eval("[xi,yi,zi,15]")
kv = python.eval("{'linewidth': 0.5 ,'colors' :'k'}")
CS = python.apply(plt.contour, args,kv)
--
pg.jet = plt.cm.jet
args = python.eval("[xi,yi,zi,15]")
kv = python.eval("{'cmap': jet}")
CS = python.apply(plt.contourf, args,kv)
-- draw colorbar
plt.colorbar()
-- plot data points.
pg.x = x; pg.y = y
args = python.eval("[x,y]")
kv = python.eval("{'marker': 'o', 'c':'b','s':5}")
CS = python.apply(plt.scatter, args,kv)
plt.xlim(-2,2)
plt.ylim(-2,2)
plt.title(string.format('griddata test (%i points)',npts))
--plt.savefig(figname, dpi, 'white')
--
pg.figname = figname ; pg.dpi = dpi
args = python.eval("[figname]")
kv = python.eval("{'dpi': dpi ,'facecolor' :'white'}")
CS = python.apply(plt.savefig, args,kv)
end
\stopluacode
 
 
 
\def\testSCIPY[#1]{%
\getparameters[scipy][#1]%
\ctxlua{testSCIPY("\csname scipyfigname\endcsname","\csname scipydpi\endcsname")}%
\externalfigure[\csname scipyfigname\endcsname]%
}
 
\starttext
\startTEXpage
\testSCIPY[figname={test-scipy-1.pdf},dpi={150}]
\stopTEXpage
\stoptext
</texcode>
 
== Python Imaging Library (PIL) ==

Navigation menu