Loading the libraries

library(reshape2)
library(ggplot2)

Loading the table onto R

data1 <- read.csv("summary_otu_count_for_boxplot.csv")
attach(data1)
The following objects are masked from data1 (pos = 3):

    gg.closed, gg.denovo, gg.open, silva.closed, silva.denovo, silva.open

The following objects are masked from data1 (pos = 4):

    gg.closed, gg.denovo, gg.open, silva.closed, silva.denovo, silva.open
names(data1)
[1] "silva.closed" "gg.closed"    "silva.denovo" "gg.denovo"    "silva.open"
[6] "gg.open"     

Here’s what the table contains:

data1

Generating a basic boxplot

ggplot(melt(data1), aes(variable, value)) + geom_boxplot()
No id variables; using all as measure variables

Adding some colour, axes labels and a legend

ggplot(melt(data1), aes(variable, value)) +
geom_boxplot(aes(color=factor(variable))) +
theme_bw() +
theme(legend.text = element_text(size = 9), legend.title = element_text(size = 9)) +
theme(axis.text = element_text(size = 9)) +
theme(axis.title = element_text(size = 9)) +
labs(x = "OTU picking method", y = "Observed OTU count",colour = "legend") +
annotation_logticks(sides = "rl") +
theme(panel.grid.minor = element_blank()) +
guides(title.hjust = 1.0) +
theme(plot.margin = unit(c(0,1,0,0),"mm"))
No id variables; using all as measure variables

Putting in a fill colour instead

ggplot(melt(data1), aes(variable, value)) +
  geom_boxplot(aes(fill = variable)) +
  theme_bw() +
  theme(legend.text = element_text(size = 9), legend.title = element_text(size = 9)) +
  theme(axis.text = element_text(size = 9)) +
  theme(axis.title = element_text(size = 9)) +
  labs(x = "OTU picking method", y = "Observed OTU count",colour = "legend") +
  annotation_logticks(sides = "rl") +
  theme(panel.grid.minor = element_blank()) +
  guides(title.hjust = 1.0) +
  theme(plot.margin = unit(c(0,1,0,0),"mm"))
No id variables; using all as measure variables

LS0tDQp0aXRsZTogIkRyYXdpbmcgYSBib3hwbG90IGZvciBvYnNlcnZlZCBPVFUgY291bnQgdnMgT1RVIHBpY2tpbmcgbWV0aG9kIg0Kb3V0cHV0Og0KICBodG1sX25vdGVib29rOiBudWxsDQogIGh0bWxfZG9jdW1lbnQ6DQogICAgZGZfcHJpbnQ6IHBhZ2VkDQogICAgY29kZV9mb2xkaW5nOiBzaG93DQotLS0NCg0KIyBMb2FkaW5nIHRoZSBsaWJyYXJpZXMNCmBgYHtyfQ0KbGlicmFyeShyZXNoYXBlMikNCmxpYnJhcnkoZ2dwbG90MikNCmBgYA0KDQojIExvYWRpbmcgdGhlIHRhYmxlIG9udG8gUg0KYGBge3J9DQpkYXRhMSA8LSByZWFkLmNzdigic3VtbWFyeV9vdHVfY291bnRfZm9yX2JveHBsb3QuY3N2IikNCmBgYA0KDQpgYGB7cn0NCmF0dGFjaChkYXRhMSkNCm5hbWVzKGRhdGExKQ0KYGBgDQoNCkhlcmUncyB3aGF0IHRoZSB0YWJsZSBjb250YWluczoNCmBgYHtSfQ0KZGF0YTENCmBgYA0KDQojIEdlbmVyYXRpbmcgYSBiYXNpYyBib3hwbG90DQpgYGB7cn0NCmdncGxvdChtZWx0KGRhdGExKSwgYWVzKHZhcmlhYmxlLCB2YWx1ZSkpICsgZ2VvbV9ib3hwbG90KCkNCmBgYA0KDQojIEFkZGluZyBzb21lIGNvbG91ciwgYXhlcyBsYWJlbHMgYW5kIGEgbGVnZW5kDQpgYGB7cn0NCmdncGxvdChtZWx0KGRhdGExKSwgYWVzKHZhcmlhYmxlLCB2YWx1ZSkpICsgDQpnZW9tX2JveHBsb3QoYWVzKGNvbG9yPWZhY3Rvcih2YXJpYWJsZSkpKSArIA0KdGhlbWVfYncoKSArIA0KdGhlbWUobGVnZW5kLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpLCBsZWdlbmQudGl0bGUgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpKSArDQp0aGVtZShheGlzLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpKSArDQp0aGVtZShheGlzLnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemUgPSA5KSkgKw0KbGFicyh4ID0gIk9UVSBwaWNraW5nIG1ldGhvZCIsIHkgPSAiT2JzZXJ2ZWQgT1RVIGNvdW50Iixjb2xvdXIgPSAibGVnZW5kIikgKw0KYW5ub3RhdGlvbl9sb2d0aWNrcyhzaWRlcyA9ICJybCIpICsNCnRoZW1lKHBhbmVsLmdyaWQubWlub3IgPSBlbGVtZW50X2JsYW5rKCkpICsNCmd1aWRlcyh0aXRsZS5oanVzdCA9IDEuMCkgKw0KdGhlbWUocGxvdC5tYXJnaW4gPSB1bml0KGMoMCwxLDAsMCksIm1tIikpDQpgYGANCg0KIyBQdXR0aW5nIGluIGEgZmlsbCBjb2xvdXIgaW5zdGVhZA0KYGBge3J9DQpnZ3Bsb3QobWVsdChkYXRhMSksIGFlcyh2YXJpYWJsZSwgdmFsdWUpKSArIA0KICBnZW9tX2JveHBsb3QoYWVzKGZpbGwgPSB2YXJpYWJsZSkpICsgDQogIHRoZW1lX2J3KCkgKyANCiAgdGhlbWUobGVnZW5kLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpLCBsZWdlbmQudGl0bGUgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpKSArDQogIHRoZW1lKGF4aXMudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplID0gOSkpICsNCiAgdGhlbWUoYXhpcy50aXRsZSA9IGVsZW1lbnRfdGV4dChzaXplID0gOSkpICsNCiAgbGFicyh4ID0gIk9UVSBwaWNraW5nIG1ldGhvZCIsIHkgPSAiT2JzZXJ2ZWQgT1RVIGNvdW50Iixjb2xvdXIgPSAibGVnZW5kIikgKw0KICBhbm5vdGF0aW9uX2xvZ3RpY2tzKHNpZGVzID0gInJsIikgKw0KICB0aGVtZShwYW5lbC5ncmlkLm1pbm9yID0gZWxlbWVudF9ibGFuaygpKSArDQogIGd1aWRlcyh0aXRsZS5oanVzdCA9IDEuMCkgKw0KICB0aGVtZShwbG90Lm1hcmdpbiA9IHVuaXQoYygwLDEsMCwwKSwibW0iKSkNCmBgYA==