hmatrix- Linear algebra and numerical computations

Portabilityuses gnuplot and ImageMagick
MaintainerAlberto Ruiz (aruiz at um dot es)



Very basic (and provisional) drawing tools using gnuplot and imageMagick.

This module is deprecated. It will be replaced by improved drawing tools based on the Gnuplot package by Henning Thielemann.



mplot :: [Vector Double] -> IO ()Source

plots several vectors against the first one

plot :: [Vector Double -> Vector Double] -> (Double, Double) -> Int -> IO ()Source

Draws a list of functions over a desired range and with a desired number of points

 > plot [sin, cos, sin.(3*)] (0,2*pi) 1000

parametricPlot :: (Vector Double -> (Vector Double, Vector Double)) -> (Double, Double) -> Int -> IO ()Source

Draws a parametric curve. For instance, to draw a spiral we can do something like:

 > parametricPlot (\t->(t * sin t, t * cos t)) (0,10*pi) 1000

splot :: (Matrix Double -> Matrix Double -> Matrix Double) -> (Double, Double) -> (Double, Double) -> Int -> IO ()Source

Draws the surface represented by the function f in the desired ranges and number of points, internally using mesh.

 > let f x y = cos (x + y) 
 > splot f (0,pi) (0,2*pi) 50    

mesh :: Matrix Double -> IO ()Source

Draws a 3D surface representation of a real matrix.

 > mesh (hilb 20)

In certain versions you can interactively rotate the graphic using the mouse.

meshdom :: Vector Double -> Vector Double -> (Matrix Double, Matrix Double)Source

From vectors x and y, it generates a pair of matrices to be used as x and y arguments for matrix functions.

matrixToPGM :: Matrix Double -> StringSource

writes a matrix to pgm image file

imshow :: Matrix Double -> IO ()Source

imshow shows a representation of a matrix as a gray level image using ImageMagick's display.