У меня есть вопрос относительно порядка данных в моем geom_bar.ggplot2 geom_bar ... как сохранить порядок данных.frame
Это мой набор данных:
SM_P,Spotted melanosis on palm,16.2
DM_P,Diffuse melanosis on palm,78.6
SM_T,Spotted melanosis on trunk,57.3
DM_T,Diffuse melanosis on trunk,20.6
LEU_M,Leuco melanosis,17
WB_M,Whole body melanosis,8.4
SK_P,Spotted keratosis on palm,35.4
DK_P,Diffuse keratosis on palm,23.5
SK_S,Spotted keratosis on sole,66
DK_S,Diffuse keratosis on sole,52.8
CH_BRON,Dorsal keratosis,39
LIV_EN,Chronic bronchities,6
DOR,Liver enlargement,2.4
CARCI,Carcinoma,1
поручаю следующие COLNAMES:
colnames(df) <- c("abbr", "derma", "prevalence") # Assign row and column names
Тогда я сюжет:
ggplot(data=df, aes(x=derma, y=prevalence)) + geom_bar(stat="identity") + coord_flip()
Почему ggplot2 рэнд omly изменить порядок моих данных. Я хотел бы иметь порядок моих данных в соответствии с моим data.frame.
Любая помощь очень ценится!
Это не случайно, это алфавитный. См. Здесь для решения http://stackoverflow.com/questions/3253641/change-the-order-of-a-discrete-x-scale – arvi1000
Прежде всего спасибо за ваш ответ. Если я применяю 'derma_table <- таблица (ДФ $ дермы) derma_levels <- имена (derma_table) [порядка (ДФ $ распространенность)] ДФА $ derma2 <- фактор (DF $ дермы, уровни = derma_levels)', а затем plot 'ggplot (data = df, aes (x = derma, y = prevalence)) + geom_bar (stat =" identity ") + coord_flip()' отображает то же, что и в моем вопросе. На самом деле команды только изменяют data.frame в алфавитном порядке, что именно то, что я хотел бы избежать ' – Jonas
, вы повторно выравниваете коэффициент' derma2', но затем используете 'x = derma' – arvi1000