Two key questions - is your data gridded? And do you plan to sample from these density values later, or are you just wanting to plot it and see what it looks like?
If your data is gridded (your ~10000 lines cover every combination of x and y values in the range that you are interested in), then you can use the contour command in Gadfly, which is the volcano plot you described. You'll first need to reshape the data so it's a 2D array: think of it as displaying a 2D image, where the number at each point is the density. However, for displaying this kind of data, I prefer heatmaps, and I don't know if Gadfly supports those - you may have to look into the histogram2d command. If it is not gridded (the x and y points don't have any particular structure to them), it's still possible, but you have to choose a way to decide how you want to turn it from unstructured data into a 2D image. The histogram2d approach that Tom showed above is one option, where you treat each density measurement as a weighted measurement in a histogram. But if your data represents single measurements of a function that has meaningful values away from those measured points, you probably want to interpolate between those points. For this you can use a package like Dierckx, which does interpolations on unstructured data. I also have some simple code that does barycentric triangular interpolation between unstructured points, in case you wanted to have a look at that. This may be overkill, however, if you just want to look at the data and don't plan to interpolate or draw from those density values later. If that's the case, the trisurface plot above might be just what you need for showing you the shape of your density data. Whatever you choose, I can recommend Tom's Plots package as a nice interface to the other plotting packages in Julia - it makes it easy to switch between different plotting options like Gadfly and PyPlot depending on what features they offer. Cheers, Scott On Friday, 13 May 2016 15:34:19 UTC+1, [email protected] wrote: > > Dear Julia users, > > I have a rookie question about plotting in Gadfly. I have some density > data in a plain-text file in the form of x y d, where d is the density at > the point (x,y). I have about 10,000 lines of this data. I'm currently > plotting old-school using gnuplot and since I don't like the looks of what > I've been able to make, I'm hoping to be able to do something more elegant > like Gadfly. I'm a relatively new Julia user as well. I like the "volcano" > contour plot from the Gadfly documentation ( second plot from the top at > http://dcjones.github.io/Gadfly.jl/geom_contour.html). I'm just not sure > how to go about it. > > Has anyone done something like this before? I think it could be a really > beautiful way to represent my data if I can get it to work. Any hints or > suggestions would be greatly appreciated! > > Cheers, > > Amelia >
