2
我使用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)
}
结果是:
我需要升级我的功能,根据重新排序的话,频率酒吧(按降序排列)。当我看到关于重新排序另一个问题的答案,我尝试在aes_string
介绍reorder
功能,但它不能正常工作。
重复的例子:
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(table(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