R語言作圖,包ggplot2
各種圖
就是喜歡這個顏色,你打我啊~
R語言,畫圖,處理數據太方便了。
- 首先你要載入包、數據
library(ggplot2)
data("diamonds")
- 查看錶的內容
head(diamonds)
簡單介紹一下表的字段:cut:切割工藝、clarity:淨度、carat:克拉 …… - 接下來通過統計圖解釋一下表裏的內容:
- 直方圖:橫座標是carat,縱座標是carat值的計數分佈
ggplot(data = diamonds) + geom_histogram(aes(x = carat))
多維的直方圖
- 密度曲線圖,橫軸是carat,縱軸是carat的值分佈密度
ggplot(diamonds,aes(x=price,fill=clarity))+geom_density()
- 散點圖,橫軸是carat,縱軸是價格,鑽石的顏色用顏色表示出來(三個字段的維度展示)
ggplot(diamonds, aes(x = carat, y = price)) + geom_point(aes(color = color))
因爲顏色疊加在一起不好看,所以將散點圖分層,依據顏色分層。(三個字段的維度展示)
ggplot(diamonds, aes(x = carat, y = price)) +geom_point(aes(color = color))
+ facet_wrap(~color)
還可以選擇橫向分層和縱向分層,橫向選擇cut切割工藝,縱向選擇clarity淨度,變成五維字段的分層。(但是各種顏色疊加在一起了)
ggplot(diamonds, aes(x = carat, y = price)) +geom_point(aes(color = color))
+ facet_grid(cut ~ clarity)
- 箱線圖,查看字段的值的分佈,可以看到字段的值的異常值
ggplot(diamonds, aes(y = carat, x = 1)) + geom_boxplot()
二維的箱線圖,橫軸選擇carat,縱軸選擇cut。可以看到carat在不用cut維度下的值的分佈情況,找到異常值
ggplot(diamonds, aes(y = carat, x = cut)) + geom_boxplot()
- 和箱線圖類似的小提琴圖,可以看到值的分佈密度
ggplot(diamonds, aes(y = carat, x = cut)) + geom_violin()