Вопрос по sequence, r, facet, ggplot2 – Исправление порядка граней в ggplot

57

Данные:

type    size    amount  
T   50%     48.4    
F   50%     48.1    
P   50%     46.8    
T   100%    25.9    
F   100%    26.0    
P   100%    24.9    
T   150%    21.1    
F   150%    21.4    
P   150%    20.1    
T   200%    20.8    
F   200%    21.5    
P   200%    16.5

Мне нужно построить гистограмму вышеуказанных данных, используя ggplot (ось X -> "тип", ось Y -> "количество", группа по "размер"). Когда я использовал следующий код, я не получаю переменную "тип" а так же какразмер" в порядке, указанном в данных. Пожалуйста, смотрите рисунок. Я использовал следующий код для этого. ,

 ggplot(temp, aes(type, amount , fill=type, group=type, shape=type, facets=size)) + 
  geom_bar(width=0.5, position = position_dodge(width=0.6)) + 
  facet_grid(.~size) + 
  theme_bw() + 
  scale_fill_manual(values = c("darkblue","steelblue1","steelblue4"), 
                    labels = c("T", "F", "P"))

Для решения проблемы заказа я использовал факторный метод для переменной "тип" используя следующее. Пожалуйста, смотрите рисунок также.

temp$new = factor(temp$type, levels=c("T","F","P"), labels=c("T","F","P")) 

Тем не менее, теперь я нене знаю, как исправить порядок для переменной "размер", Это должно быть 50%, 100%. 150% и 200%.

Ваш Ответ

1   ответ
85

Сделайте ваш размер фактором в вашем фрейме данных:

temp$size_f = factor(temp$size, levels=c('50%','100%','150%','200%'))

Затем изменитеfacet_grid(.~size) вfacet_grid(.~size_f)

Тогда сюжет:

Графики теперь в правильном порядке.

@Harpal У вас есть комментарий к вашему ответу в виде другого ответа. Посмотри Bhargav Rao
@BhargavRao Полагаю, комментарий был удален? Harpal
Агаi.stack.imgur.com/4fNPH.png Bhargav Rao
Благодарю. Я действительно глупый. :-) samarasa
рад помочь :) Harpal

Похожие вопросы