Dear friends
I'm trying to plot in silico derived values of 3 types of
buffer-capacities? over pH values and want densities of the three types
together at each pH with the pH values on the abscissa.
I have generated some data
set.seed(2345)
pHs <- c(7.2,7.4,7.6)
pH <- rep(pHs,each=30)
BC <- rep(rep(c(20,10,10),each=10),3)+rnorm(90,0,5)
type <- rep(rep(c("TOT","NC","CA"),each=10),3)
ddd <- data.frame(pH,BC,type)
GG <- ggplot()
for (i in 1:3) {
? dd <- ddd[ddd$pH==pHs[i],]
? GG <- GG + geom_density(data=dd,aes(x=BC,fill=type),alpha=0.1)
}
GG
but here I only get all pH values? plotted together whereas I want 3
series in the vertical direction at the three pH values.
I wonder how this could be done?
All best wishes
Troels Ring, MD
Aalborg, Denmark
PS: Windows 10,
R version 4.0.5 (2021-03-31
series of densities
5 messages · Troels Ring, David Winsemius, William Michels
On 5/17/21 7:44 AM, Troels Ring wrote:
Dear friends
I'm trying to plot in silico derived values of 3 types of
buffer-capacities? over pH values and want densities of the three
types together at each pH with the pH values on the abscissa.
I have generated some data
set.seed(2345)
pHs <- c(7.2,7.4,7.6)
pH <- rep(pHs,each=30)
BC <- rep(rep(c(20,10,10),each=10),3)+rnorm(90,0,5)
type <- rep(rep(c("TOT","NC","CA"),each=10),3)
ddd <- data.frame(pH,BC,type)
GG <- ggplot()
for (i in 1:3) {
? dd <- ddd[ddd$pH==pHs[i],]
? GG <- GG + geom_density(data=dd,aes(x=BC,fill=type),alpha=0.1)
}
GG
but here I only get all pH values? plotted together whereas I want 3
series in the vertical direction at the three pH values.
Are you perhaps hoping for means of grouped values connected by lines? Of perhaps a bee-swarm type plot? there are quite a few overlapping points. -- -- David.
I wonder how this could be done? All best wishes Troels Ring, MD Aalborg, Denmark PS: Windows 10, R version 4.0.5 (2021-03-31
______________________________________________ R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
On 5/17/21 7:44 AM, Troels Ring wrote:
Dear friends
I'm trying to plot in silico derived values of 3 types of
buffer-capacities? over pH values and want densities of the three
types together at each pH with the pH values on the abscissa.
I have generated some data
set.seed(2345)
pHs <- c(7.2,7.4,7.6)
pH <- rep(pHs,each=30)
BC <- rep(rep(c(20,10,10),each=10),3)+rnorm(90,0,5)
type <- rep(rep(c("TOT","NC","CA"),each=10),3)
ddd <- data.frame(pH,BC,type)
GG <- ggplot()
for (i in 1:3) {
? dd <- ddd[ddd$pH==pHs[i],]
? GG <- GG + geom_density(data=dd,aes(x=BC,fill=type),alpha=0.1)
}
GG
but here I only get all pH values? plotted together whereas I want 3
series in the vertical direction at the three pH values.
I wonder how this could be done?
Here are two different displays of the data. I haven't figured out what was intended by the request for " 3 series in the vertical direction at the three pH values". library(ggplot2) #violin plots are density-like ggplot( data=ddd, aes(x=pH, y=BC,group=interaction(type,pH), col=type))+geom_violin() #boxplots are summary methods ggplot( data=ddd, aes(x=pH, y=BC,group=interaction(type,pH), col=type))+geom_boxplot()
All best wishes Troels Ring, MD Aalborg, Denmark PS: Windows 10, R version 4.0.5 (2021-03-31
______________________________________________ R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
Hi Troels, Have you considered using Lattice graphics? Adapting from examples on the help page:
?histogram() histogram( ~ BC | pH, data = ddd, type = "density",
xlab = "BC", layout = c(1, 3), aspect = 0.618,
strip = strip.custom(strip.levels=c(TRUE,TRUE)),
panel = function(x, ...) {
panel.histogram(x, ...)
panel.mathdensity(dmath = dnorm, col = 1,
args = list(mean=mean(x), sd=sd(x)) )
} )
HTH, Bill.
W. Michels, Ph.D.
On Mon, May 17, 2021 at 8:12 AM Troels Ring <tring at gvdnet.dk> wrote:
Dear friends
I'm trying to plot in silico derived values of 3 types of
buffer-capacities over pH values and want densities of the three types
together at each pH with the pH values on the abscissa.
I have generated some data
set.seed(2345)
pHs <- c(7.2,7.4,7.6)
pH <- rep(pHs,each=30)
BC <- rep(rep(c(20,10,10),each=10),3)+rnorm(90,0,5)
type <- rep(rep(c("TOT","NC","CA"),each=10),3)
ddd <- data.frame(pH,BC,type)
GG <- ggplot()
for (i in 1:3) {
dd <- ddd[ddd$pH==pHs[i],]
GG <- GG + geom_density(data=dd,aes(x=BC,fill=type),alpha=0.1)
}
GG
but here I only get all pH values plotted together whereas I want 3
series in the vertical direction at the three pH values.
I wonder how this could be done?
All best wishes
Troels Ring, MD
Aalborg, Denmark
PS: Windows 10,
R version 4.0.5 (2021-03-31
______________________________________________ R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
Thanks a lot to David and William - I think ggplot( data=ddd, aes(x=pH, y=BC,group=interaction(type,pH), col=type))+geom_boxplot() was very helpful! All best Troels Den 18-05-2021 kl. 02:27 skrev David Winsemius:
ggplot( data=ddd, aes(x=pH, y=BC,group=interaction(type,pH), col=type))+geom_boxplot()