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()