Scene plot in R

I would like to create a [stacked bar plot] histogram in R with the following data:

Period = c(1,1,2,2,3,3,4,4) Sample = c("A","B","A","B","A","B","A","B") Value1 = c(3,2,6,7,3,2,1,2) Value2 = c(1,0,5,2,2,0,2,5) x <- data.frame(Period,Sample,Value1,Value2) 

Is it possible to have a "Period" and "Sample" along the X-axis and values ​​("Value1" and "Value2") in the "Stacked Bar Plot". Thus, the height of the first histogram will be 4 (separately for Value1 and Value2) Thanks for your help in advance! Best wishes.

+6
source share
2 answers

This is not as pretty as ggplot solution, but

 v <- rbind(Value1,Value2) barplot(v,beside=FALSE,names=levels(interaction(Period,Sample)),legend=TRUE) 

seems to work.

+7
source

You are describing a complex histogram, not a histogram. With ggplot you can do it like this:

 library(ggplot2) library(reshape2) x <- data.frame( Period = c(1,1,2,2,3,3,4,4), Sample = c("A","B","A","B","A","B","A","B"), Value1 = c(3,2,6,7,3,2,1,2), Value2 = c(1,0,5,2,2,0,2,5) ) mx <- melt(x, id.vars=1:2) ggplot(mx, aes(x=Period, y=value, fill=variable)) + geom_bar(stat="identity") + facet_grid(~Sample) 

enter image description here

+19
source

Source: https://habr.com/ru/post/898204/


All Articles