我正在尝试找出如何转换我的条形图。当前,填充色“Gears”的顺序是按数字顺序排列的。我希望能够手动设置“Gears”填充色的任意顺序。
我发现的所有其他示例都告诉我如何根据数据的计数或值按升序或降序对它们进行排序。而我想手动以任意顺序设置顺序。因此,不是3-4-5,而是我想手动告诉它我想要将数据呈现为3-5-4或5-3-4等顺序。
这是我现在拥有的:
我发现的所有其他示例都告诉我如何根据数据的计数或值按升序或降序对它们进行排序。而我想手动以任意顺序设置顺序。因此,不是3-4-5,而是我想手动告诉它我想要将数据呈现为3-5-4或5-3-4等顺序。
这是我现在拥有的:
library(data.table)
library(scales)
library(ggplot2)
mtcars <- data.table(mtcars)
mtcars$Cylinders <- as.factor(mtcars$cyl)
mtcars$Gears <- as.factor(mtcars$gear)
setkey(mtcars, Cylinders, Gears)
mtcars <- mtcars[CJ(unique(Cylinders), unique(Gears)), .N, allow.cartesian = TRUE]
ggplot(mtcars, aes(x=Cylinders, y = N, fill = Gears)) +
geom_bar(position="dodge", stat="identity") +
ylab("Count") + theme(legend.position="top") +
scale_x_discrete(drop = FALSE)
如果需要进行不涉及ggplot2
的任何数据操作,我希望使用data.table
进行操作。感谢您的帮助!