[英]Ordering Data with Stacked Bar Charts in ggplot2
備用標題:用ggplot2中的離散圖例替換連續圖例
我正在嘗試使用以下代碼創建堆積的條形圖:
DataTest = data.frame(Order = 1:7,
Data = c(340, 464, 93, 218, 16, 206, 103),
Category = factor(c("Free", "Unavailable", "Free",
"Unavailable", "Free", "Unavailable", "Free"),
levels = c("Free", "Unavailable")))
ggplot(DataTest, aes(x="Thing", y=Data, fill=Category)) +
geom_bar(position="stack", stat="identity")
忽略x,這並不重要。 繪制的圖形如下所示:
問題是,我希望數據像數據框中的行一樣排序,因此堆疊的條形圖應以交替的顏色進行條紋,如下所示:
堆疊的條形圖,具有交替的顏色,但具有連續的圖例,而不是離散的圖例
實際上,除了圖例以外,此條形圖正是我想要的。 我希望圖例僅顯示兩種顏色,但我不知道該如何設置。
該條形圖的代碼為:
DataTest[["Category"]] = c(1, 0, 1, 0, 1, 0, 1) # change Category from a factor to numeric
ggplot(DataTest, aes(x="Thing", y=Data, fill=Category)) +
geom_bar(position="stack", stat="identity")
與之前的代碼段相同,但是這次的Catgeory是僅1s和0s的數字向量。 如果我使用邏輯矢量而不是數字,則條再次按顏色分組。
這是我嘗試的最后一件事:
ggplot(DataTest, aes(x="Thing", y=Data, fill=Order, colour=Category)) +
geom_bar(position="stack", stat="identity")
這表明,盡管stat =“ identity”,ggplot仍堅持對數據進行排序。
所以。
明確地說,我不知道如何按訂單對數據進行排序,而是根據類別為數據着色-除了引入不需要的連續圖例以外。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.