Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Free Software for Visualizing Data

  1. Dec 29, 2015 #1
    I just graduated, and one of my last classes in school was computational physics. We would write programs using C++ to simulate all sorts of physical situations, write a bunch of data to a text file, and then import that data into Mathematica, where we would use the data to create graphs, animations, manipulations, etc.

    I really enjoyed this class, and I wanted to keep messing around with these sorts of problems on my own. The problem is, I'm not very computer savvy outside of Mathematica, and now that I've graduated I don't have access to that. I can still program and generate data, but I was wondering if anyone knows of a free substitute for Mathematica when it comes to producing visualizations from .txt data. It obviously doesn't have to do all the other stuff Mathematica does, I just want to make pretty graphs and animations from my data (something like manipulations would be a nice perk as well, but that seems like it would be harder to find).

    Any suggestions?
  2. jcsd
  3. Dec 30, 2015 #2


    User Avatar
    Science Advisor
    Gold Member
    2017 Award

    You might want to check out R. It is a free graphing and data analysis package that is very popular. I have used it enough to recommend it. It is well supported and documented. There are many extension packages available, including an animation package. I have no experience with the animation package.
  4. Dec 30, 2015 #3


    User Avatar
    Science Advisor
    Homework Helper
    2017 Award

    And there is SciLab - a freeware Matlab
  5. Dec 30, 2015 #4


    User Avatar
    Science Advisor
    Gold Member
    2017 Award

    I am very interested in a free MATLAB-like tool. When I saw your SciLab recommendation, it lead me to a similar tool set, Octave. (https://en.wikipedia.org/wiki/GNU_Octave ) It looks like Octave is even more MATLAB-like. I am going to investigate it.
  6. Dec 30, 2015 #5


    User Avatar
    Science Advisor

    I would just recommend using Python with the matplotlib library. You can easily learn how to generate just about any type of graph. It's not quite as easy as Mathematica, but close. And it's free.
  7. Jan 8, 2016 #6

    I'm using Octave right now. Only a few hours in, but it works so far.
  8. Jan 14, 2016 #7
    outside the more useful realm of programming languages with a "real goal" there are also programming languages like https://processing.org just in case you want something that is the fancy pants version of a graphical library .

    you could also try something like love which is a framework written in lua https://love2d.org/ , and since it is a framework written for making all sort of multimedia software it has some physics and rendering technologies too .
  9. Jan 14, 2016 #8


    Staff: Mentor

    There is also Julia (www.julialang.org) which promises to be a better matlab than matlab. You'll have to use it with the iPython notebook which comes packaged with Julia in the Anaconda distro (http://quant-econ.net/jl/getting_started.html). One key difference in julia from matlab is in the use of [] for array indexing vs matlabs use of (). Julia can interface well with Python, Fortran and R too so its poised to be integrated into legacy systems.

    And for the more casual user of Matlab there Freemat (http://freemat.sourceforge.net/) which is easier to setup and run than any of the other matlab clones. However, again the clones cant alway run matlab code referencing stuff beyond the matlab core functions and the functions may not be mapped one to one.
  10. Jan 22, 2016 #9


    User Avatar
    Education Advisor

    If you're into javascript, d3 is probably the go to data visualization thing out there. It's a bit of a mess to learn but what in javascript isn't...
  11. Jan 24, 2016 #10
    Thanks everyone for the suggestions! I've settled into using Octave for now, and that's working well. My next goal is to learn Python and start exploring some of the Python-specific options suggested here. I'll be coming back to this thread for ideas, so feel free to keep adding suggestions for me and others.
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook