The colors can be specified with the standard lattice "col=" argument.
likert(t(BB), ReferenceZero=0, horizontal=FALSE, col=RColorBrewer::brewer.pal(4, "Blues")) Most other customizations you might need are also possible. Many examples are in the examples section of ?likert and in the demo. Rich On Tue, Mar 28, 2017 at 8:56 AM, <g.maub...@weinwolf.de> wrote: > Hi Richard, > > many thanks for your reply. > > Your solution is not exactly what I was looking for. I would like to know > how I can change the colors of the stacked bars in my plot and not use the > default values. How can this be done? > > Kind regards > > Georg > > > > > Von: "Richard M. Heiberger" <r...@temple.edu> > An: g.maub...@weinwolf.de, > Kopie: r-help <r-help@r-project.org> > Datum: 28.03.2017 17:40 > Betreff: Re: [R] Way to Plot Multiple Variables and Change Color > > > > I think you are looking for the likert function in the HH package. > From ?likert > > > Diverging stacked barcharts for Likert, semantic differential, rating > scale data, and population pyramids. > > > This will get you started. Much more fine control is available. See > the examples and demo. > > ## install.packages("HH") ## if not yet on your system. > > library(HH) > > AA <- dfr[,-9] > > labels <- sort(unique(as.vector(data.matrix(AA)))) > result.template <- integer(length(labels)) > names(result.template) <- labels > > BB <- apply(AA, 2, function(x, result=result.template) { > tx <- table(x) > result[names(tx)] <- tx > result > } > ) > > BB > > likert(t(BB), ReferenceZero=0, horizontal=FALSE) > > > On Tue, Mar 28, 2017 at 6:05 AM, <g.maub...@weinwolf.de> wrote: >> Hi All, >> >> in my current project I have to plot a whole bunch of related variables >> (item batteries, e.g. How do you rate ... a) Accelaration, b) Horse > Power, >> c) Color Palette, etc.) which are all rated on a scale from 1 .. 4. >> >> I need to present the results as stacked bar charts where the variables >> are columns and the percentages of the scales values (1 .. 4) are the >> chunks of the stacked bar for each variable. To do this I have > transformed >> my data from wide to long and calculated the percentage for each > variable >> and value. The code for this is as follows: >> >> -- cut -- >> >> dfr <- structure( >> list( >> v07_01 = c(3, 1, 1, 4, 3, 4, 4, 1, 3, 2, 2, 3, >> 4, 4, 4, 1, 1, 3, 3, 4), >> v07_02 = c(1, 2, 1, 1, 2, 1, 4, 1, 1, >> 4, 4, 1, 4, 4, 1, 3, 2, 3, 3, 1), >> v07_03 = c(3, 2, 2, 1, 4, 1, >> 2, 3, 3, 1, 4, 2, 3, 1, 4, 1, 4, 2, 2, 3), >> v07_04 = c(3, 1, 1, >> 4, 2, 4, 4, 2, 2, 2, 4, 1, 2, 1, 3, 1, 2, 4, 1, 4), >> v07_05 = c(1, >> 2, 2, 2, 4, 4, 1, 1, 4, 4, 2, 1, 2, 1, 4, 1, 2, 4, 1, 4), >> v07_06 = c(1, >> 2, 1, 2, 1, 1, 3, 4, 3, 2, 2, 3, 3, 2, 4, 2, 3, 1, 4, 3), >> v07_07 = c(3, >> 2, 3, 3, 1, 1, 3, 3, 4, 4, 1, 3, 1, 3, 2, 4, 1, 2, 3, 4), >> v07_08 = c(3, >> 2, 1, 2, 2, 2, 3, 3, 4, 4, 1, 1, 1, 2, 3, 1, 4, 2, 2, 4), >> cased_id = structure( >> 1:20, >> .Label = c( >> "1", >> "2", >> "3", >> "4", >> "5", >> "6", >> "7", >> "8", >> "9", >> "10", >> "11", >> "12", >> "13", >> "14", >> "15", >> "16", >> "17", >> "18", >> "19", >> "20" >> ), >> class = "factor" >> ) >> ), >> .Names = c( >> "v07_01", >> "v07_02", >> "v07_03", >> "v07_04", >> "v07_05", >> "v07_06", >> "v07_07", >> "v07_08", >> "cased_id" >> ), >> row.names = c(NA, -20L), >> class = c("tbl_df", "tbl", >> "data.frame") >> ) >> >> mdf <- melt(df) >> d_result <- mdf %>% >> dplyr::group_by(variable) %>% >> count(value) >> >> ggplot( >> d_result, >> aes(variable, y = n, fill = value)) + >> geom_bar(stat = "identity") + >> coord_cartesian(ylim = c(0,100)) >> >> -- cut -- >> >> Is there an easier way of doing this, i. e. a way without need to >> transform the data? >> >> How can I change the colors for the data points 1 .. 4? >> >> I tried >> >> -- cut -- >> >> d_result, >> aes(variable, y = n, fill = value)) + >> geom_bar(stat = "identity") + >> coord_cartesian(ylim = c(0,100)) + >> scale_fill_manual(values = RColorBrewer::brewer.pal(4, "Blues")) >> >> -- cut - >> >> but this does not work cause I am mixing continuous and descrete values. >> >> How can I change the colors for the bars? >> >> Kind regards >> >> Georg >> >> ______________________________________________ >> 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. > > ______________________________________________ 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.