簡體   English   中英

ggplot,分兩類的條形圖

[英]ggplot, bar plot by two categories

我有以下數據:

> test
   ave year det
1   58 2007 det
2   61 2008 not
3   62 2009 det
4   61 2010 not
5   61 2011 det
6   61 2012 not
7   62 2013 det
8   64 2014 not
9   64 2015 det
10  60 2016 not
11  60 2017 det
12  59 2018 not
13  58 2019 det
14  60 2007 not
15  59 2008 det
16  58 2009 not
17  58 2010 det
18  57 2011 not
19  58 2012 det
20  59 2013 not
21  58 2014 det
22  56 2015 not
23  55 2016 det
24  55 2017 not
25  56 2018 det
26  55 2019 not

我想使用 ggplot 創建一個條形圖,其中顯示了與每年“det”級別對應的 ave 值。 我該怎么做?

像這樣的東西?

library(ggplot2)
ggplot(df, aes(x = year, y = ave, group = det, fill = det)) + 
geom_bar(stat = 'identity', position = 'dodge')

在此處輸入圖片說明

您應該成功使用包 ggplot2 和函數 ggplot() 。 如果您想了解有關此軟件包的更多信息,請訪問 ggplot2 的“備忘單”: https ://www.rstudio.com/resources/cheatsheets/

所以你可以用你的數據做這樣的事情:

ggplot(test, aes(fill=det, group=det, y=ave, x=year)) + 
    geom_bar(position="dodge", stat="identity")

這是一個奇特的目的:

library(ggplot2)
ggplot(test, aes(x = year, y = ave, group = det, fill = det, label = ave)) +
    geom_bar(stat = 'identity', position = 'dodge', width = 0.5) +
    geom_text(aes(label=ave), vjust=1.6, color="white",
              position = position_dodge(0.5), size=3.5)+
    theme_minimal()

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM