ccsv
ccsv

Reputation: 8659

Selecting a graphing library in Julia for speed and customizability

I found a vast number of libraries for plotting in Julia that includes the following:

Winston: 2D plotting for julia looks like it requires Cairo and Color. Examples look like it supports line plots, histograms, scatterplot, and regression.

Gadfly: Looks to support Dataframes and uses the Color library. Graphs has a fairly clean look to them. Supports boxplot, line plots, bar plots, histograms, scatter plots, regression, densities, and contours. Runs on vector graphics library Compose.jl

Pyplot: A wrapper for Matplotlib in python

Gaston: Basically a wrapper for GNUplot

Which graphing library is preferred for speed? Are one of the plots using a wrapper faster than the julia based ones?

I use Matplotlib so I am aware it is not the fastest, but has a lots of features. It seems like Gadfly would be the prefer julia based plotting library due to its ability to plot different graphs, is it customizable as matplotlib in terms of being able to control line thickness, point shapes, create dotted lines?

Upvotes: 1

Views: 1104

Answers (1)

IainDunning
IainDunning

Reputation: 11654

Speed is a tough question to answer because it depends strongly on exactly what you are plotting, and what you are plotting to. There is not a fastest overall.

Gadfly has the best interface, I think, because it is in Julia and is written for Julia. Compose is also very powerful in its own right (see, e.g. graph plotting).

For publication-quality plots though, I feel you still need to use PyPlot/matplotlib. It has more control over how the plot appears - e.g. right now Gadfly doesn't support different dashed lines. I find myself using Gadfly where possible, and using PyPlot for more "final" graphics for black-and-white publication purposes.

Upvotes: 4

Related Questions