ggplot第一課:基礎篇

這篇文章告訴大家如何製作圖表

董宸賓
2023-08-19

先載入tidyverse

install.packages("tidyverse")

library(tidyverse)

再入一組數據

表格1 <- read_csv("https://docs.google.com/spreadsheets/d/e/2PACX-1vTpPg1erFUhXC6sKzUajLFeeBrdcPrugTyTWj8ly1tS4KS3h9yN31i4sq2NoGnHQ4_1M3rtbu1fo8XK/pub?gid=0&single=true&output=csv")
view(表格1)

讓我們先觀察這組數據

datatable(表格1)

建立一個基礎的圖表

#data=你的數據
#geom_point=圖表類型
#設定兩軸aes(x=X,y=Y)
ggplot(data = 表格1) + 
  geom_point(mapping = aes(x = 年度, y = 案件數量))+
  theme(text=element_text(family="黑體-繁 中黑"))

增加變相

ggplot(data = 表格1) + 
  geom_point(mapping = aes(x = 年度, y = 案件數量,color = 案件類型))+
  theme(text=element_text(family="黑體-繁 中黑"))

疊圖

ggplot(data = 表格1) + 
  geom_point(mapping = aes(x = 年度, y = 案件數量,color = 案件類型))+
  geom_line(mapping = aes(x = 年度, y = 案件數量,color = 案件類型))+
  theme(text=element_text(family="黑體-繁 中黑"))

簡化疊圖

ggplot(data = 表格1,mapping = aes(x = 年度, y = 案件數量,color = 案件類型)) + 
  geom_point()+
  geom_line()+
  theme(text=element_text(family="黑體-繁 中黑"))

ggplot(data = 表格1,mapping = aes(x = 年度, y = 案件數量,fill=案件類型,label= 案件數量)) + 
  geom_histogram(binwidth = 0.2, stat = "identity") +
  scale_fill_manual( values = c("#004AAD","grey50"))+
  facet_wrap(~案件類型, ncol = 1)+
  theme(text=element_text(family="黑體-繁 中黑"))