Hi again,

As a follow up, does anybody know how to fix the following error?

It seems that I can use a "weight" parameter in geom_violin, but I am able to  
figure out what is the problem with the following code.



> library(ggplot2)

> mydata <- read.csv('test.csv', header=T,row.names=1)
> mydata
     V1 V2 V3
P1 73.6 50  R
P2 75.2 20  R
P3  6.5  5  R
P4 41.4 10  C
P5  5.4 10  C
P6 18.8  5  C
> p <- ggplot(mydata, aes(x=V3, y=V1)) + geom_violin(trim=FALSE, weight=V2)
Error in layer(data = data, mapping = mapping, stat = stat, geom = GeomViolin,  
:
  object 'V2' not found
>
>
> wg <- as.factor(mydata$V2)
> p <- ggplot(mydata, aes(x=V3, y=V1)) + geom_violin(trim=FALSE, weight=wg)
> p + geom_dotplot(binaxis='y', stackdir='center', dotsize=1)
`stat_bindot()` using `bins = 30`. Pick better value with `binwidth`.
Error: Aesthetics must be either length 1 or the same as the data (1024): weight
Run `rlang::last_error()` to see where the error occurred.





Regards,
Mahmood


________________________________
From: Mahmood Naderan-Tahan
Sent: Monday, April 12, 2021 10:01 PM
To: r-help@r-project.org
Subject: Weighted violin chart


Hi,

I would like to know if it is possible to plot a weighted violin chart with R. 
Currently, I have


> library(ggplot2)
> mydata <- read.csv('test.csv', header=T,row.names=1)
> mydata
     V1 V2 V3
P1 73.6 50  R
P2 75.2 20  R
P3  6.5  5  R
P4 41.4 10  C
P5  5.4 10  C
P6 18.8  5  C
> p <- ggplot(mydata, aes(x=V3, y=V1)) + geom_violin(trim=FALSE)
> p + geom_dotplot(binaxis='y', stackdir='center', dotsize=1)

I would like to use V2 as the weight vector. Any idea about that?



Regards,
Mahmood

        [[alternative HTML version deleted]]

______________________________________________
R-help@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.

Reply via email to