2015-08-14 2 views
0

Я хочу построить гистограмму с категориями по х и баллы по y. Порядок со стола должен храниться в сюжете, но прямо сейчас сюжет переупорядочивается, и несколько сообщений, которые я нашел на SO, не помогли моему делу. например, я попытался это: Order Bars in ggplot2 bar graphКак сохранить порядок категориального x на гистограмме ggplot2 в R

require(data.table) 
require(ggplot2) 

table <- structure(list(a = c(1, 2, 3, 4, 5, 6), b = c("grease", "surf", 
"lift", "zen", "ufo", "nothing"), c = c("3976.65457028497", "3700.27298336394", 
"3691.44157683915", "3687.89781035758", "3685.83200999925", "3685.44486138222" 
)), .Names = c("a", "b", "c"), row.names = c(NA, -6L), class = c("data.table", 
"data.frame")) 

ggplot(data=table) + geom_histogram(aes(x=b,y=c),stat='identity') 

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

+0

Серьезно что такое с downvotes? Разве я кому-то помог или что-то не так с моим вопросом? – Gullydwarf

ответ

2

Из того, что я понял, это то, что вы пытаетесь сделать (я переименовал таблицу объектов для table.dt):

ggplot(data=table.dt,aes(x=reorder(b,-as.numeric(c)),y=c)) + 
    geom_histogram(stat='identity') 
+2

BTW, вы не можете замаскировать функцию с помощью нефункциональной переменной в R. (Это [lisp-2] (https://en.wikipedia.org/wiki/Common_Lisp#The_function_namespace).) –

+0

Спасибо @ A.Webb, это хорошая вещь, чтобы знать! – Andrelrms

+1

Можно также упомянуть, что 'table $ c' хранится как символ ... который не может быть предназначен – user20650

Смежные вопросы