Slashdot Mirror


Unix Graphing Programs?

An anonymous reader asks: "For university I am looking for a program to make some nice 2D or 3D graphs to represent some data for statistics. I am currently using RedHat Fedora as my Linux distro but KChart, Gnumeric, OpenOffice, and the other ones I found weren't suitable. It would be nice if the "template" was easily configurable so I could standarize all of my work. i.e. have the actual value next to the bar etc.. It's mainly bar graphs that I need. Does anyone have any recommendations for good easy Linux programs to graph general data? professor didn't have any ideas for Linux."

25 of 85 comments (clear)

  1. gnuplot by Croatian+Sensation · · Score: 5, Informative

    If you want to make consistent looking graphs, with minimal effort, use GNUPLOT. Great piece of software.

    www.gnuplot.info

    --
    Just cuz you ain't paranoid, doesn't mean they're not after you.
    1. Re:gnuplot by UtucXul · · Score: 3, Informative

      I'll not only second (or third or fourth) gnuplot, but will give a link to a tutorial I gave on it a little while ago.
      unix plotting tutorial

  2. gnuplot by denominateur · · Score: 3, Informative

    I use gnuplot for most things.. it takes a day or two to get used to it though so if you're out of time, try something else since it's not the best documented of projects. (generally i produce data graphs for physics lab reports)

  3. gnuplot of course! by JFitzsimmons · · Score: 5, Informative

    gnuplot homepage

    It has a learning curve, since it is mostly commandline based, but if you're in university you should be able to figure it out... I hope.

    --
    Beware he who would deny you access to information, for in his heart he dreams himself your master. -Anonymous
  4. GnuPlot by Chris+Pimlott · · Score: 2, Informative

    gnuplot is good all sorts of arbitrary graphs, but you will have to read up on its syntax to learn how to use it - no nice GUIs. But it will produce very nice postscript output that looks quite sharp when printed.

    Although it's more a graphing tool, it's flexible enough to do charts, with a little work. Fortunately, there are scripts like Barchart that do most of the heavy lifting for you.

  5. one perl method... by mike77 · · Score: 2, Informative
    Depending on how you have your data, this might be useful:


    http://search.cpan.org/~kester/Chart-Scientific-0. 15/


    Friend of mine wrote it a while ago to do 2-D scientific plotting. If you know some PERL, you might be able to get this to fill your needs.

    --

    --Keeping the flame wars alive, one post at a time

  6. Octave by CapnOats.com · · Score: 3, Informative

    Now don't quote me on this but i'm pretty sure gnu octave uses gnuplot as its engine.

    It's syntax is fairly similar to several large expensive math packages and it's fairly easy once you get the hang of it (just like everything in life).

  7. GRACE by trip11 · · Score: 5, Informative

    As several others mentioned gnuplot is a great program. If you would like a bit more GUI with your plotting I would recomend Grace (formally xmgrace). Its Free too. Website: http://plasma-gate.weizmann.ac.il/Grace/ It only does 2D plots but handles them very nicely, can do fitting, read tables of text file data, and is very customizable as far as lables go. I use it to plot out most of my data by pulling it straight from the output through an awk script to format the data slightly and then open Grace. Give it a shot. Good luck with 3D plots, but I might recomend maple. Again with a bit of an awk script you can format the data into a form maple can read and plot out.

  8. grace by 4of12 · · Score: 3, Informative

    Over here.

    Does bar charts.

    --
    "Provided by the management for your protection."
  9. R for Statistics, Ploticus for same and More by Monster+Zero · · Score: 5, Informative
    For all of my statistical analysis work, I use 'R', which is a pretty complete package for my uses. I use ploticus for all of my plots, and have been very happy with it, just be sure to read the docs before you get frustrated, as it takes a bit of reading to piece together a good plot. Ploticus has rudimentary statistics operators through an input filter mechanism (mean, std dev, min/max, etc) but for serious work R is where it is at.

    I usually input all of my data into PostgeSQL, use R to do an analysis and insert the new data into the DB, then use ploticus to pull directly from the DB and create PNG format plots. Couldn't be easier once setup, makes writing conference papers and whitepapers (relatively) easy. If you are regenerating the same style of plot lots of times, ploticus is well worth the effort of setting up the first time.

    http://www.r-project.org/
    http://ploticus.sourceforge.net/

  10. What I've used by asahetter · · Score: 5, Informative

    I had the same problem as you last year. I tried gnuplot, which is good if you need to do some quick plots but are generally looked on as excel quality. I recommend XMGrace for 2-dimentional stuff. (I've published papers using this). And Mayavi for 3-D. Makes some nice purdy pictures.

    1. Re:What I've used by ctalnh · · Score: 3, Informative

      It's true that gnuplot's outputs tend to be a bit rudimentary for print-quality graphs, but you can go back and edit the postscript output to prettify it. I've used Illustrator (which understands postscript natively) to post-process the plot contours, do plot insets, make pretty axis lables, and shade regions between contours.

      To me it just makes sense to separate the actual contour generation from the assembly of contours into final graphs. Since gnuplot is scriptable, I can do some simple data analysis (i.e. curve fitting) and get a log of exactly what I've done -- I can't count the number of times I look at a graph and go, "what did I do here again?". I can then manipulate the raw plots to get exactly the graph I want with my vector art program of choice. Combining these two functions can be convenient at times, but in my experience just tends to short-shrift both.

      p.s. no, I haven't used Grace. Looks tempting...

  11. Several good ones out there by crmartin · · Score: 4, Informative

    GNU plot, as several people have suggested.

    If your doing stats stuff, seriously look into R.

    ePix looks good, although I haven't tried it.

    asymptote is very powerful, although you probably want to do some tool hacking or scripting to make use of it.

    Probably the ultimate tool for such things is Mathematica. Costs money, but the student version is feasible and it's a lovely for all this sort of thing.

    And, of course, you could try searching freshmeat --- there are many many other tools there.

  12. How about JPGraph? by g_bowskill · · Score: 3, Informative

    It's a very powerful set of php libraries which make it very easy to get graphs exactly how you want them, http://www.aditus.nu/jpgraph/. I've used it in a number of situations and found it extremely fast and easy to use with really professional results.

    --
    Isee Stars Astro Image Hosting.
  13. Try R by Sometimes_Rational · · Score: 2, Informative

    The open-source statistics package R makes all kinds of graphs, has all kinds of great extensions for sophisticated statistical manipulations, has a following among professional statisticians, and is in active development. It is also pretty fast for large datasets, too. The language is a bit of a pain to use at first, though.

    Pirates like it, too.

    --
    Warning: The intelligence of this post may be larger than it appears.
  14. Try ploticus, also free by JeffL · · Score: 2, Informative
    I like gnuplot for many things, but for bar graphs I think ploticus is better.

    It is also free (gpl), and comes with example files for creating a variety of different graphs.

  15. Since you didn't specify 'free' by Neil+Blender · · Score: 3, Informative

    If you don't mind dropping $99, ChartDirector is pretty good. Good documentation, lots of features, good support, responsive to bug reports. It runs on Windows, Linux and FreeBSD.

  16. Don't forget the old faithful: xgraph by mdecerbo · · Score: 2, Informative

    If you just want an extremely basic program to make 2-dimenstion bar, line, or scatter graphs, xgraph is about as bare-bones simple as they come.
    It runs on any Unix and dumps PostScript output files. Sometimes anything more is overkill.

  17. qtiplot by Anonymous Coward · · Score: 2, Informative

    Most responses are gnuplot, which is pretty good although a bit crude.

    I personally use Kpl (http://frsl06.physik.uni-freiburg.de/privat/still e/kpl/), but I feel QtiPlot (http://soft.proindependent.com/qtiplot.html) has a lot of potential.

    Hope that helps.

  18. Java: JFreeChart by HalWasRight · · Score: 2, Informative

    If you are facile with Java, or your data is already in a javax.swing.table.TableModel, then I suggest JFreeChart.

    --
    "This mission is too important to allow you to jeopardize it." -- HAL
  19. ROOT by teelasdad · · Score: 2, Informative

    http://root.cern.ch/
    Not quite the simplest program, but it can do what you want, is for free and available for a lot of platforms.
    T

  20. R (really - even if slashdot wants a longer title) by hubertf · · Score: 2, Informative

    www.r-project.org

    For my PhD thesis I had to produce a lot of bargraphs etc. recently, and found R combined with some perl scripts a wonderful tool.

    - Hubert

  21. Review of a BUNCH of the available options by Noksagt · · Score: 3, Informative

    DANSE has a great review of a lot of different options. Most are cross-platform and scriptable and many are open source. They are interested in building python-based tools for neutron scattering experiments, so there is that bias to the wiki. But they have good screenshots & good pros/cons that many other projects can relate to.

    As others have suggested, Grace is fantastic for 2D. Hippodraw is the most under-rated/unheard of that is also quite amazing. I use them both. I also use Matplotlib with my python work.

    If you do LaTeX & script your plots, Gri is a good bet.

    I have sometimes used gnuplot & Scigraphica, but they are less useful to me. A lot of other people still use gnuplot, so it is always good to have in the toolkit. It also has decent 3D that is not present in my preferred 2D programs. But it is uglier and clumsier than alternatives. Scigraphica wants to be Microcal Origin, but it isn't there yet. It also dropped out of development for quite a while.

    I like open source. But if you are agnostic (and have deep pockets), I always thought tecplot looked cool.

  22. for the more adventurous grapher... by osmic234 · · Score: 2, Informative

    Try GMT (Generic Mapping Tools) at http://gmt.soest.hawaii.edu/

    Widely used by people in the geophysics field. It's open source, and for the basic linux user it can be a slightly fiddly to get up and running.

    It's a collection of command line tools that generate postscript output. You can basically customise everything to your exact tastes, and re-use the scripts if you want consistent graphs and charts.

  23. 2D & 3D plotsq by Mendenhall · · Score: 3, Informative

    OK, I vote with a lot of other people on Grace/xmgrace for 2d plotting.

    For higher dimensionality visualization, though, nobody has mentioned openDX (www.opendx.org). What other plotting and visualization program can easily plot 6-dimensional data (for example, a rank-3 tensor field) on a 3d space?

    OpenDX takes a little while to really understand, but once you get it, the payoff is trmendous. It has a very general data model that allow one to have arbitrary topology connecting your values, from completely scattered points with no explicit relation, to various meshes such as simplices (triangles/tets), cubic/hypercubic lattices, and many more.

    Also, it represents data in files very flexibly, so one can put structural information in a small, simple file, and reference a larger (potentially huge), external file for the actual data.