I'm interested in which program would you recommend for drawing graphs with x and y errors. Also to be able to analyse data and then graph it. My ideal graph would look like this:



Until now I was drawing my graph reports in Excel, but I feel like Excel is made more for an accountants than scientists. I would really like to work more in scientific based programs that could come in handy in the future (graduate and postgraduate work, research).

Any recommendation?

  • 4
    $\begingroup$ Some common options are Matlab, Maple, Mathematica, Python, etc. $\endgroup$ May 26, 2018 at 21:07
  • 2
    $\begingroup$ And plot.ly . And Gnuplot. And Igor (Wavemetrics). $\endgroup$
    – user137289
    May 26, 2018 at 21:24
  • $\begingroup$ You can easily make plots like that in MS Office, too. Honestly that's a pretty low bar. $\endgroup$
    – Nat
    May 26, 2018 at 21:24
  • 2
    $\begingroup$ In high energy particle physics, CERN's ROOT is widely used. It is basically a C/C++ interpreter, and has extensive plotting libraries that can be used in your analysis code, or on command-line for instant purposes. You can even implement a GUI with interactive plots and buttons if you have a routine analysis but need a specific interactive interface for your experiment. There is also a python version: PyROOT. $\endgroup$ May 26, 2018 at 21:38
  • $\begingroup$ I use Mathematica and Igor Pro. $\endgroup$
    – user93237
    May 26, 2018 at 21:50

1 Answer 1


Python is certainly a major language for scientific data analysis today. The three key words are: Numpy, Scipy and Matplotlib.

  • NumPy: it's the basic numerical analysis package in Python. It allows for array manipulation, matrix calculus, Fourier transforms, statistics, ...
  • SciPy: it's the extended version of numpy with more advanced built-in procedures: image and signal processing, optimization, graphs routines, more statsitic and so on. Importing SciPy makes essentially redundant importing NumPy.
  • Matplotlib: here we came to the standard for visualizing data in Python: you can do almost everything in 2D or 3D with this library. Take a look at this sample plots!

There is also a useful IDE for Python called PyZo, in case you want to have the shell and the editor in a single window. It makes the user experience and the debug a little bit easier.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.