Scientific plotting and fitting (including matlab and co), Data Managing

Posted on Sun 26 June 2022 in Scientific software/Plotting

There are tons of tools for every special demand but often you want to make a nice and simple plot for papers. The output of Matlab python can be made fairly nice but this takes time. See also the specialized tool section for transient fitting of optical or x-ray data

Simple plotting and fitting

A very nice and free tool is veusz. It is only usable for plotting but this it does well. It imports csv data and then can be linked to the files. When the file is updated, so is the plot. Very useful for use with scripting programs.

I recommend to use for simple plotting a tool called qtiplot. With its features it comes close to Origin. The source code is free the compiled version from the website however costs money. This project compiles usually a 2 month old version for windows and provides it for free

Mac User can get it from Macports and simply compile it under windows this is a pain. Scidavis is alive again, it used to be better then qtiplot but i haven’t tried the new version yet

The new matlab is very simple to plot and fit data (you can drag and drop your datafiles into matlab and then just use the mouse to mark the columns you want to plot! (we have some books with step to step instructions) Fitting there: type:”cftool” and you get a click to the fit tool. In Matlab there is a little plugin called „ezyfit“ what ads to the simple „plot“ command a full package of klick and adjust fitting tools (very fast!)

Excel or Openoffice/Libreoffice can make fast and simple plots but the fitting is not really good


beside the advanced packages below there are quite some tools able to make decent 3d plots Visit leaves you with a nice gui that can make impressive 3d plots easy adjustable

Advanced plotting, fitting and data analysis

Lund has campus licences for Matlab, Maple and Labview. You can download them from the ldc with your Lucat login

There are some free alternatives: I prefer “scipy” and “numpy” which are a plugins to the programming language Python over matlab since i can do a lot more with it and if i ever end up at a place without a licence (tousands of dollars) i can still use my old scripts. AND the abilities are not only equal in the analysis part but since python is a full programming language even stronger. One important factor is also speed. Python loads only the modules you tell it too so it is faster on small machines.

Currently maybe the best general package that summarizes many packages is Anaconda   See also Coding

By using “PythonXY” you get a package for windows (SPyder) that looks and feels like matlab (with variable editor and all this) it has scipy and numpy and all the packages already included

The “Enthought suite” (free for acadenmic use see end of page) is another distribution which wraps up everything but I prefer PythonXY because of spyder

Octave is a Matlab clone which uses the same sourcecode so most programs are compatible

there are many more free alternatives but everybody might choose for himself z.B.

maxima is one of the options to get a opensource maple/mathematica (thats the language) (thats a nice frontend in the style of Maple/mathematica)

pyMaxima is the 3d plotting interface written in python

Sage is a package written in Python with a nice frontend and combining all of the above it is great for numerical analysis but the gui programming and the control of scientific instruments is missing it now also contains some analytical modules and 3d plotting

Yet another clone for free numerical calculation with a lot of plugins and tools is scilab. Which of the once to use is always a matter of taste

Of course the plotting classic gnuplot should be unmentioned it offers suppreme 2d and 3d plotting possibilities