Join 3,561 readers in helping fund MetaFilter (Hide)


What software can make this scatterplot?
December 26, 2012 10:22 PM   Subscribe

What software is used to make a scatterplot like this?

I've played around with Excel and couldn't get that to do it. SPSS was a wash as well. Is there a setting I'm missing?

The data is laid out as multiple columns representing months (Month 1, Month 2, etc.) with values underneath. I would like to make a scatterplot like I've linked above.

I'm missing two things:

1. I don't want multiple points turning into one when they overlap as Excel has been doing.
2. I want each month's points to be the same shape (triangle, square) rather than each row getting its own shape (meaning there are 10+ shapes per month).

Thank you!
posted by razzbaronz to Computers & Internet (14 answers total) 2 users marked this as a favorite
 
Maybe R?
posted by dfriedman at 10:27 PM on December 26, 2012


Yes, that was definitely created using R.
posted by k8lin at 10:31 PM on December 26, 2012


I would do it with Matlab, but it would take a little fiddling, or something out of the FEX.
posted by supercres at 10:34 PM on December 26, 2012


I'd try to get hold of the authors of the article and ask them what they used to create it, and if they had any code they could share. You should try email first, then eventually phone.
posted by singingfish at 10:45 PM on December 26, 2012


Yes, this could be easily replicated with R. It's difficult to give you concrete help since we have no idea what your data structure looks like and whether or not you have any experience with R. Here's a trivial example:

# If you don't have the ggplot library, run install.packages('ggplot2', dependencies = TRUE)
library(ggplot2)
# I'll create some fake data (in your case you'll be reading your real data into R)
df  <- data.frame(months = rep(c("Jan", "Feb", "Mar"), 4), values = rnorm(12))
ggplot(df, aes(months, values)) + geom_point(size =3, aes(shape = months), position = "jitter")
Here's the output plot (I've done a couple more things to make the output cleaner (but not shown here.)

You'll need to tweak this a bit to get the plot the way you want. This question is better suited for StackOverflow *. Although this is trivial for an experienced R user, you'll definitely need lots of help if you've never used it before.

These types of questions are better suited to StackOverflow which is better suited for programming questions and already has a trove of useful answers with code.
posted by special-k at 10:49 PM on December 26, 2012 [2 favorites]


The data is laid out as multiple columns representing months (Month 1, Month 2, etc.) with values underneath.

To make such data plottable in R, you'll need to transform the data from wide to long. To do this in R, you'l have to melt the data by telling it which columns are the identifiers and which ones (the months) are the measured ones before plotting.

I don't want multiple points turning into one when they overlap as Excel has been doing.

In R, you can either jitter the points (as with the example above), OR use a transparency (in ggplot by specifying the alpha parameter) to show overlapping points.
posted by special-k at 10:52 PM on December 26, 2012 [1 favorite]


Yes, that was definitely created using R.

I'm almost 100% certain it wasn't created with R. ok, just checked the paper to confirm and it looks like they used Prism GraphPad software (might be more your speed if you cannot program or have the time/patience to learn R).
posted by special-k at 11:04 PM on December 26, 2012 [2 favorites]


SigmaPlot might be another possibility. I'm pretty confident I could make a plot look like that, but it might require some tweaking, maybe a manually generated X-axis.
posted by cali59 at 12:17 AM on December 27, 2012


Tableau is also very capable of doing this.
posted by bfranklin at 1:49 AM on December 27, 2012


If you want to get a rapid introduction to what R can do and how to use it then I would recommend Anthony Damico's series of 2 minutes tutorials. Here is his one on scatterplots.
posted by rongorongo at 4:52 AM on December 27, 2012 [1 favorite]


Not sure this is what you want but take a look at Statsoft, scroll down.
posted by shoesietart at 6:35 AM on December 27, 2012


It looks like Prism to me. Extremely simple to use, btw.
posted by waving at 7:15 AM on December 27, 2012 [1 favorite]


I recognised the style; it's prism.
posted by dhruva at 9:13 AM on December 27, 2012 [1 favorite]


Prism worked perfectly. Thank you all so much!
posted by razzbaronz at 10:47 AM on December 27, 2012


« Older I suspect I have a food allerg...   |  Is there a cross-platform clou... Newer »
This thread is closed to new comments.