У меня есть такой набор данных.Баретки с использованием расплава и ggplot
> ds
domanda esito cella
22870 22870 B 3
22893 22893 R 4
16258 16258 P 2
14684 14684 P 2
12873 12873 B 1
12933 12933 B 2
12047 12047 R 2
22880 22880 B 3
11479 11479 P 3
20836 20836 B 3
Мне нужно производить график, где по оси х-у меня есть элементы «Селл» (от 1 до 49, я показал вам только часть его). Для каждой ячейки я хочу полосу, состоящую из трех цветов, в зависимости от соответствующих элементов P, B, R. Например, на клетке 2 я хочу полосу длиной 4, цветной фиолетовый (2 единицы), синий (1 единица) и красный (1 единица). Я знаю, что могу использовать функцию melt
, а затем ggplot
(с), но я не получаю то, что хочу. Кто-то может помочь?
То, что я пробовал:
> this.col
[1] 2 1 3 3 2 2 1 2 3 2
Начиная с этого файла цветов (полученных колонке "Esito") я сделал следующее:
ds_som.m = melt(ds_som[,2:3],id=c("cella"))
ggplot(data=ds_som.m, aes(x=ds_som.m$cella, y=ds_som.m$value,
fill=ds_som.m$variable,col=this.col))+
geom_bar(stat = "identity")+
scale_fill_brewer(direction=-1)+
guides(fill = guide_legend(title = "Esiti", title.position = "top"))
Вы хотите штабелироваться? Можете ли вы показать, что вы пробовали? – mtoto
не очевидно, что вам нужно «расплавить» данные. Но убедитесь, что cella является фактором –