У меня есть следующая функция графика, используя ggplot2
.R - изменить порядок штрихов в функции с помощью ggplot2
Function_Plot <- function(Fun_Data, Fun_Color)
{
MyPlot <- ggplot(data = na.omit(Fun_Data), aes_string(x = colnames(Fun_Data[2]), fill = colnames(Fun_Data[1]))) +
geom_bar(stat = "count") +
coord_flip() +
scale_fill_manual(values = Fun_Color)
return(MyPlot)
}
Результат:
Мне нужно обновить свою функцию, чтобы изменить порядок планку по частотам слов (в порядке убывания). Поскольку я вижу ответ на другой вопрос о переупорядочении, я пытаюсь ввести функцию reorder
в aes_string
, но это не сработает.
Воспроизводимый пример:
a <- c("G1","G1","G1","G1","G1","G1","G1","G1","G1","G1","G2","G2","G2","G2","G2","G2","G2","G2")
b <- c("happy","sad","happy","bravery","bravery","God","sad","happy","freedom","happy","freedom",
"God","sad","happy","freedom",NA,"money","sad")
MyData <- data.frame(Cluster = a, Word = b)
MyColor <- c("red","blue")
Function_Plot(Fun_Data = MyData, Fun_Color = MyColor)
Попробуйте 'MyData <- as.data.frame (таблица (MyData [, 2], MyData [, 1])); MyData [, 1] <- reorder (MyData [, 1], MyData [, 3], FUN = sum); ggplot (data = na.omit (MyData), aes_string (x = colnames (MyData [1]), y = colnames (MyData [ 3]), fill = colnames (MyData [2]))) + geom_bar (stat = "identity") '. – lukeA