[R] Plotting rgb proportions in R

Jim Lemon drjimlemon @ending from gm@il@com
Thu Jan 3 02:55:53 CET 2019


Hi Tasha,
Using the original sample you sent:

rgb_prop<-read.table(text="Red Green Blue pct
249 158 37 56.311
249 158 68 4.319
249 158 98 0.058
249 128 7 13.965
249 128 37 12.87
188 128 37 0.029
249 128 68 0.161
188 128 68 0.015
188 98 7 0.029
219 128 7 2.773
219 128 37 2.583
188 98 68 0.058
219 128 68 0.525
249 188 37 0.876
249 188 68 1.08
219 98 7 0.482
249 188 98 0.015
249 158 7 3.852",header=TRUE)
rgb_prop$Red<-rgb_prop$Red/255
rgb_prop$Green<-rgb_prop$Green/255
rgb_prop$Blue<-rgb_prop$Blue/255
# the matrix format forces the stacked bar display
barplot(matrix(rgb_prop$pct,ncol=1),
 col=rgb(rgb_prop[,c("Red","Green","Blue")]),beside=FALSE)

Of course you can add more stacks by increasing the number of columns in
the "x" matrix.

Jim

On Thu, Jan 3, 2019 at 3:33 AM Tasha O'Hara <tasha.eileen using gmail.com> wrote:

> I apologize for the late reply after the holidays. I really appreciate all
> the data visualization suggestions. The scatterplot works very well, but I
> do have >400 specimen with at least 5-20 colors each, so a stacked
> barchart of each specific color proportion would be most useful to show
> uniformity within each specimen. Below is an example of what I would like
> to do, but instead of generic colors, I am hoping to plot the actual RGB
> proportions for each.
> [image: image.png]
>
> On Wed, Dec 19, 2018 at 5:28 AM PIKAL Petr <petr.pikal using precheza.cz> wrote:
>
>> Hi
>>
>> > -----Original Message-----
>> > From: R-help <r-help-bounces using r-project.org> On Behalf Of Bert Gunter
>> > Sent: Wednesday, December 19, 2018 5:26 AM
>> > To: Jim Lemon <drjimlemon using gmail.com>
>> > Cc: R-help <r-help using r-project.org>
>> > Subject: Re: [R] Plotting rgb proportions in R
>> >
>> > 3-d Proportions must sum to 1and are thus actually 2-d and should
>> preferaby
>> > be plotted as a ternary plot. Several r packages will do this for you,
>> e.g.
>> > package Ternary. Search "ternary plots" on rseek.org for others.
>>
>> From which I would recommend ggtern. Sometimes a bit tricky but quite
>> handy, especially when you consider some grouping.
>>
>> Cheers
>> Petr
>>
>> >
>> > -- Bert
>> >
>> >
>> > Bert Gunter
>> >
>> > "The trouble with having an open mind is that people keep coming along
>> and
>> > sticking things into it."
>> > -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip )
>> >
>> >
>> > On Tue, Dec 18, 2018 at 3:10 PM Jim Lemon <drjimlemon using gmail.com> wrote:
>> >
>> > > Hi Tasha,
>> > > I may be right off the track, but you could plot RGB proportions on a
>> > > 3D plot. The easiest way I can think if would be to convert your 0-255
>> > > values to proportions:
>> > >
>> > > rgb_prop<-read.table(text="Red Green Blue pct
>> > > 249 158 37 56.311
>> > > 249 158 68 4.319
>> > > 249 158 98 0.058
>> > > 249 128 7 13.965
>> > > 249 128 37 12.87
>> > > 188 128 37 0.029
>> > > 249 128 68 0.161
>> > > 188 128 68 0.015
>> > > 188 98 7 0.029
>> > > 219 128 7 2.773
>> > > 219 128 37 2.583
>> > > 188 98 68 0.058
>> > > 219 128 68 0.525
>> > > 249 188 37 0.876
>> > > 249 188 68 1.08
>> > > 219 98 7 0.482
>> > > 249 188 98 0.015
>> > > 249 158 7 3.852",header=TRUE)
>> > > rgb_prop$Red<-rgb_prop$Red/255
>> > > rgb_prop$Green<-rgb_prop$Green/255
>> > > rgb_prop$Blue<-rgb_prop$Blue/255
>> > > library(scatterplot3d)
>> > > scatterplot3d(rgb_prop[,1:3],cex.symbols=sqrt(rgb_prop[,4]),
>> > >  color=rgb(rgb_prop[,1],rgb_prop[,2],rgb_prop[,3]),pch=19)
>> > >
>> > > then plot the RGB values on a 3D scatterplot. I have included
>> > > arguments to make the symbols the actual RGB colors that you specify
>> > > and their size proportional to the square root of the percentages.
>> > >
>> > > Jim
>> > >
>> > > On Wed, Dec 19, 2018 at 5:17 AM Tasha O'Hara <tasha.eileen using gmail.com>
>> > > wrote:
>> > > >
>> > > > Hello,
>> > > >
>> > > > I am trying to plot specific rgb color proportions of a marine
>> > > > specimen
>> > > in
>> > > > a stacked plot using R and I was looking for some help. I have
>> > > > several rgb proportions per specimen (an example of one is below).
>> > > > I've run into different examples of people using vegan or grDevices.
>> > > > Can anyone help
>> > > with
>> > > > this?
>> > > >
>> > > > Red    Green  Blue   %
>> > > > 249 158 37 56.311
>> > > > 249 158 68 4.319
>> > > > 249 158 98 0.058
>> > > > 249 128 7 13.965
>> > > > 249 128 37 12.87
>> > > > 188 128 37 0.029
>> > > > 249 128 68 0.161
>> > > > 188 128 68 0.015
>> > > > 188 98 7 0.029
>> > > > 219 128 7 2.773
>> > > > 219 128 37 2.583
>> > > > 188 98 68 0.058
>> > > > 219 128 68 0.525
>> > > > 249 188 37 0.876
>> > > > 249 188 68 1.08
>> > > > 219 98 7 0.482
>> > > > 249 188 98 0.015
>> > > > 249 158 7 3.852
>> > > >
>> > > >         [[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.
>> > >
>> > > ______________________________________________
>> > > 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]]
>> >
>> > ______________________________________________
>> > 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.
>> Osobní údaje: Informace o zpracování a ochraně osobních údajů obchodních
>> partnerů PRECHEZA a.s. jsou zveřejněny na:
>> https://www.precheza.cz/zasady-ochrany-osobnich-udaju/ | Information
>> about processing and protection of business partner’s personal data are
>> available on website:
>> https://www.precheza.cz/en/personal-data-protection-principles/
>> Důvěrnost: Tento e-mail a jakékoliv k němu připojené dokumenty jsou
>> důvěrné a podléhají tomuto právně závaznému prohláąení o vyloučení
>> odpovědnosti: https://www.precheza.cz/01-dovetek/ | This email and any
>> documents attached to it may be confidential and are subject to the legally
>> binding disclaimer: https://www.precheza.cz/en/01-disclaimer/
>>
>>

	[[alternative HTML version deleted]]



More information about the R-help mailing list