当处理连续变量数据集时,选择适当的图表来呈现数据可以帮助我们更好地理解和传达数据的特征和趋势。
以下是几种常见的图表类型,可以用来呈现连续变量数据集:
直方图(Histogram):直方图是用来显示连续变量的分布情况的一种图表。它将连续变量的取值范围划分为若干个等宽的区间,然后统计每个区间内数据的频数或频率,并将其绘制成柱状图。通过直方图,我们可以观察数据的分布形态(如对称、偏态等),以及数据的集中程度和离散程度。
折线图(Line Plot):折线图是用来显示连续变量随着另一个变量(通常是时间)的变化而变化的一种图表。通过连接数据点,折线图可以展示数据的趋势和变化情况。它常用于观察时间序列数据的变化趋势,如股票价格、气温变化等。
箱线图(Box Plot):箱线图是用来展示连续变量的分布和离群值情况的一种图表。它通过显示数据的中位数、上下四分位数和上下限,以及可能存在的离群值,来提供关于数据分布的详细信息。箱线图可以帮助我们观察数据的中心位置、离散程度和异常值情况。
如果你有一组连续变量数据集,但是会常常纠结需要用什么图来呈现比较好呢~单个一元分布
#安装加载R包
install.packages(“ggplot2”)
library(ggplot2)
p <- ggplot(midwest, aes(
x = area))
p + geom_histogram(bins=10)#在geom_histogram()中用bins =指定分组个数, 或者用width指定分组宽度
tips :midwest 的数据集为美国中西部的一些县的统计数据, 如面积(单位:平方英里)
将直方图画成线的方式:
p + geom_freqpoly(bins = 15, boundary = 0.0025)#看到绘制的图本质上还是一个阶梯函数。
p + geom_density()#geom_density()可以对连续变量先做核密度估计, 然后绘制密度估计曲线
将直方图与密度估计图合并在一起, 这时直方图的纵坐标需指定为密度估计, 这样两种图的纵坐标才处于相同的范围:
p+geom_histogram(mapping = aes(y = stat(density))) + geom_density(color = “blue”, size = 1)
多个一元分布
按照上述方法呈现为:
p <- ggplot(midwest, aes(
x = area))
p + geom_histogram(mapping = aes(fill = state))
但是通过上述图可以发现,呈现的方式并不好,对于重叠的部分不友好,尤其是上边其他大洲的柱子。那有什么更好的呈现方式嘛~
首先,可以用折线图的方式,颜色代表不同的折线
p + geom_freqpoly(mapping = aes(color = state))
其次,上述提到的核心密度图也是可以的,并且添加了填充的颜色,这样是不是更加容易看了呢~
ggplot(midwest, aes(
x = area, color = state, fill = state)) +
geom_density(alpha = 0.4)
最后,可以每个洲做一个分面就可以啦~
ggplot(midwest, aes(
x = area)) +
geom_histogram() +
facet_wrap(~ state)
这样,我们遇到这种类型的数据就不为做什么图而困扰了~
如果需要同时表现多个分布, 上面给出了同时绘制多条密度曲线的方法, 但是这主要比较分布形状, 而不能比较分布的主要数字特征。 盒形图、小提琴图等比较适合同时表现和比较多个分布。
ggplot(midwest, aes(x = state, y = area)) +
geom_boxplot()
ggplot(midwest, aes(x = state, y = area)) +
geom_boxplot()+ coord_flip()
#coord_flip()反转图形
或者小提琴也是一样
ggplot(midwest, aes(x = state, y = area)) +
geom_violin() +
theme_minimal()
#相比于箱线图,小提琴图更能体现数据的分布特征~
这篇文章只是为理清用什么图呈现连续变量数据,但是对于作图的方式简单粗暴了些,如果你作图有困难可以使用http://www.biocloudservice.com/home.html
今天的分想就到这里啦,小伙伴们如果有什么问题就和小果讨论吧。