[R] Weighted violin chart

Mahmood Naderan-Tahan m@hmood@n@der@n @end|ng |rom ugent@be
Thu Apr 15 17:37:04 CEST 2021


Correct. This one


p <- ggplot(mydata, aes(x=V3, y=V1, weight=V2)) + geom_violin(trim=FALSE)


works fine. Thank you very much.

Regards,
Mahmood

________________________________
From: Duncan Murdoch <murdoch.duncan using gmail.com>
Sent: Thursday, April 15, 2021 5:24:04 PM
To: Mahmood Naderan-Tahan; r-help using r-project.org
Subject: Re: [R] Weighted violin chart

On 15/04/2021 11:07 a.m., Mahmood Naderan-Tahan wrote:
> It seems that using weight in ggplot has no effect. Also, using weight parameter in geom_violin results in an error.
>
>
>> mydata
>       V1 V2 V3
> P1 73.6  5  R
> P2 75.2  5  R
> P3  6.5 60  R
> P4 41.4 15  C
> P5  5.4  5  C
> P6 18.8 10  C
>> p <- ggplot(mydata, aes(x=V3, y=V1)) + geom_violin(trim=FALSE)
>> p
>> p <- ggplot(mydata, aes(x=V3, y=V1), weight=V2) + geom_violin(trim=FALSE)

That's not what Jeff suggested.  weight should be an argumnent to aes().

Duncan Murdoch

>> p
>
> In the code above, there is no difference between the two charts.
> Also, the following code ends up in an error
>
>> p <- ggplot(mydata, aes(x=V3, y=V1)) + geom_violin(trim=FALSE, weight=mydata$V2)
>> p
> 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.
>> mydata$V2
> [1] 50 20  5 10 10  5
>
>
> Any idea to fix that?
>
>
> Regards,
> Mahmood
>
>
> ________________________________
>
>>> ________________________________
>>> From: Jeff Newmiller <jdnewmil using dcn.davis.ca.us>
>>> Sent: Thursday, April 15, 2021 4:13:10 PM
>>> To: r-help using r-project.org; Mahmood Naderan-Tahan; r-help using r-project.org
>>> Subject: Re: [R] Weighted violin chart
>>>
>>> Not strictly on topic on this list (ggplot2 is a contributed package)
>>> but...
>>>
>>> ggplot(mydata, aes(x=V3, y=V1, weight=V2 )) + geom_violin(trim=FALSE)
>>>
>>> If you want to refer to variables in the data, they have to be listed
>>> in the mapping.
>>>
>>> On April 15, 2021 7:01:45 AM PDT, Mahmood Naderan-Tahan
>>> <mahmood.naderan using ugent.be> wrote:
>>>> 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 using 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 using 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.
>>>
>>> --
>>> Sent from my phone. Please excuse my brevity.
>>
>> --
>> Sent from my phone. Please excuse my brevity.
>
> --
> Sent from my phone. Please excuse my brevity.
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help using 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.
>


	[[alternative HTML version deleted]]



More information about the R-help mailing list