Изменить порядок для коэффициента в гистограмме - PullRequest
0 голосов
/ 06 марта 2020

У меня есть следующий код:

figg4 <- lala4 %>% gather(key, value, -Species_Name) %>%  
  mutate (Species_Name = factor(Species_Name, 
levels=c('Dasyprocta punctata',
'Cuniculus paca','Large Rats',
 'Heteromys unknown', 'Sciurus variegatoides',
 'Sciurus granatensis','Dasypus novemcinctus',
'Didelphis marsupialis',  'Philander opossum',
'Metachirus nudicaudatus', 'Nasua narica',
 'Procyon lotor', 'Eira barbara',
'Galictis vittata', 'Leopardus pardalis'))) %>% 
 ggplot(aes(x=Species_Name, y=value, 
             fill=key)) + coord_flip() + geom_col (position = "stack") +
theme(panel.background = element_blank()) + bbc_style() +
  labs(title = "Species occupancy by Site Type")+
  scale_fill_manual(values = c("#333333","#1380A1", "#FAAB18"))

Я получаю гистограмму, которая перечисляет имена в обратном порядке, я хочу, чтобы они отображались в том порядке, в котором я записал уровни в .. Как мне это сделать?

Я попытался использовать fct_reorder из forcats, добавив следующий код

mutate(name = fct_reorder(Species_Name, desc(value)))

Но это не изменило порядок. Я совершенно новичок в r и не уверен, как это сделать. Был бы признателен за любую помощь

Вот вывод dput для источника:

структура dput (lala4) (список (Species_Name = структура (c (9L, 12L, 13L)) , 14л, 19л, 22л, 27л, 46л, 41л, 42л, 10л, 15л, 32л, 33л, 24л), .Label = c ("Buteo platypterus", "Canis latrans", "Cathartes aura", "Catharus" неизвестно "," Catharus ustulatus "," Cebus capucinus "," Chordeiles unknown "," Conepatus semistriatus "," Crax rubra "," Crypturellus cinnamomeus "," Cuniculus paca "," Dasyprocta punctata "," Dasypus novemidephis ", Dasypus novemidectis marsupialis "," Eira barbara "," Galictis vittata "," Geotrygon montana "," Geotrygon violacea "," Heteromys unknown "," Holcosus quadrilineatus "," Большие крысы "," Leopardus pardalis "," Leopardus wiedii "," Lepto " неизвестен »,« Мелозона неизвестна »,« Метахирус nudicaudatus »,« Nasua narica »,« Odocoileus virginianus »,« Panthera onca »,« Parkesia noveboracensis »,« Pecari tajacu »,« Penelopina nigra »,« Philander opossum »,« Philander opossum »,« Philander opossum », каяна "," Процион лотор "," Пума конколор "," Пума яго " uaroundi "," Sciurus granatensis "," Sciurus variegatoides "," Setophaga unknown "," Sylvilagus sp "," Tamandua mexicana "," Tapirus bairdii "," Tayassu pecari "," Tigrisoma flaviatum "," Tinamus major "), класс = "фактор"), Forest Area (<5ha) = c (0,067307692, 0,134615385, 0,173076923, 0,144230769, 0,019230769, 0,086538462, 0,192307692, 0,009615385, 0,163461538, 0,038461538, 0, 0,019230769, 0, 0,163461538, 0,153846154), Forest Area (5-27ha) = c (0,067307692, 0,317307692, 0,269230769, 0,096153846, 0,038461538, 0,105769231, 0,192307692, 0,115384615, 0,134615385, 0,057692308, 0, 0,096153846, 0, 0,076923077, 0,17302330, 0,20, 0,010 (030), 0,010308, 030, 0, 0, 0, 0, 0, 212, 030, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0616923077, 0, 0, 02169230, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0 0,06915386, 0, 0,096153846, 0, 0.076923077, 0,173023, 0, 0. 0,105769231, 0,067307692, 0,144230769, 0,298076923, 0,028846154, 0,048076923, 0,086538462, 0,038461538, 0,019230769, 0,028846154, 0,125)), row.names = c (NA, 15L), class = "101 *) * 101 * 7 * 7me"). *

1 Ответ

1 голос
/ 06 марта 2020

Сначала необходимо переопределить коэффициент как упорядоченный коэффициент.

Попробуйте просто исправить код, в котором вы определяете коэффициент, добавив

ordered = TRUE

Это, вероятно, должно работать:

figg4 <- lala4 %>% gather(key, value, -Species_Name) %>%  
  mutate (Species_Name = factor(Species_Name, 
levels=c('Dasyprocta punctata',
'Cuniculus paca','Large Rats',
 'Heteromys unknown', 'Sciurus variegatoides',
 'Sciurus granatensis','Dasypus novemcinctus',
'Didelphis marsupialis',  'Philander opossum',
'Metachirus nudicaudatus', 'Nasua narica',
 'Procyon lotor', 'Eira barbara',
'Galictis vittata', 'Leopardus pardalis'), ordered = TRUE)) %>% 
 ggplot(aes(x=Species_Name, y=value, 
             fill=key)) + coord_flip() + geom_col (position = "stack") +
theme(panel.background = element_blank()) + bbc_style() +
  labs(title = "Species occupancy by Site Type")+
  scale_fill_manual(values = c("#333333","#1380A1", "#FAAB18"))

Я не могу запустить его, потому что у меня нет данных lala4 для тестирования.

...