温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

R语言可视化美化折线图、平滑曲线及路径图的方法

发布时间:2021-07-23 09:10:31 来源:亿速云 阅读:828 作者:chen 栏目:大数据

本篇内容介绍了“R语言可视化美化折线图、平滑曲线及路径图的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

今天跟大家讲关于路径图、平滑曲线与折线图及其美化。

这里涉及到三个设计线条的特殊图层函数:

geom_smooth()、geom_path()、geom_line()

下面分别讲解:

关于geom_smooth():平滑曲线

ggplot(mpg,aes(cty,hwy))+geom_point()+geom_smooth()

R语言可视化美化折线图、平滑曲线及路径图的方法
R语言可视化美化折线图、平滑曲线及路径图的方法

平滑曲线专门用于对于散点图趋势的拟合,geom_smooth函数内部有默认的拟合规则(根据统计统计算法计算出的拟合规则,而非实际的点)。

其中的括号内有默认的method参数,代表着拟合曲线所用到的统计算法,se代表着误差范围。(就是围绕着拟合直线的颜色带)。

method中的类型常见的有lm\glm\gam\loess\rlm等,当数据集记录小于1000时,method的默认参数即为loess,大于1000时则为gam。

本例所用到mpg数据集只有234个记录,使用geom_smooth参数应该默认使用的方法参数就是loess,这里我们可以检验一下:

ggplot(mpg,aes(cty,hwy))+geom_point()+geom_smooth(method="loess")

R语言可视化美化折线图、平滑曲线及路径图的方法

误差范围的颜色带是可以通过se参数进行控制的,默认se=TRUE,这里设置为se=FALSE。

ggplot(mpg,aes(cty,hwy))+geom_point()+geom_smooth(method="loess",se=FALSE)

R语言可视化美化折线图、平滑曲线及路径图的方法

接下来我们依次尝试其他几个拟合曲线:

ggplot(mpg,aes(cty,hwy))+geom_point()+geom_smooth(method="lm",se=FALSE)

R语言可视化美化折线图、平滑曲线及路径图的方法

ggplot(mpg,aes(cty,hwy))+geom_point()+geom_smooth(method="glm",se=FALSE)

R语言可视化美化折线图、平滑曲线及路径图的方法

ggplot(mpg,aes(cty,hwy))+geom_point()+geom_smooth(method="gam",se=FALSE)

R语言可视化美化折线图、平滑曲线及路径图的方法

看上去没啥太大区别,可能是数据集太小的原因吧。

路径图:geom_path()

以上函数参数可以画出路径图,其实就是根据每一个数据点的出现先后顺序,依次链接所有点所形成的路径:

ggplot(mpg,aes(cty,hwy))+geom_path()

R语言可视化美化折线图、平滑曲线及路径图的方法

这种图乍看起来没啥意义,但是在某些特殊场景下,却能够表达出非常重要的信息,比如候鸟迁徙、病毒传播、甚至飞机航线等领域。

ggplot(mpg,aes(cty,hwy))+geom_point()+geom_path()

R语言可视化美化折线图、平滑曲线及路径图的方法

可以同时添加点函数和路径函数,制作出带有点标记的路径图。

ggplot(mpg,aes(cty,hwy))+geom_point(colour="steelblue")+geom_path(colour="red")

R语言可视化美化折线图、平滑曲线及路径图的方法

每一个图层函数内的图层对象都是可以单独定义颜色的。

折线图:geom_line()

以上是直线图的图层函数;它与路径图的唯一区别就是,在连接各点之前,会按照x轴数据对总体升序排列,所以最终的连线是非常清晰的顺序折线,不会存在交叉。(而路径图则按照实际数据点在数据集中出现的先后顺序依次联结)。

ggplot(mpg,aes(cty,hwy))+geom_line(colour="steelblue")

R语言可视化美化折线图、平滑曲线及路径图的方法

ggplot(mpg,aes(cty,hwy))+geom_point(colour="black")+geom_line(colour="steelblue")

R语言可视化美化折线图、平滑曲线及路径图的方法

为了更加明显的看出两者区别,我们换一个变量:

ggplot(CO2,aes(uptake,conc))+geom_line(colour="steelblue")+geom_point(colour="black")

R语言可视化美化折线图、平滑曲线及路径图的方法

ggplot(iris,aes(Sepal.Length,Sepal.Width))+geom_line(colour="steelblue")+geom_point(colour="white",shape=21,size=4,fill="Tomato")

R语言可视化美化折线图、平滑曲线及路径图的方法

加入分类变量后的折线图:

ggplot(iris,aes(Sepal.Length,Sepal.Width,colour=Species))+geom_line()+geom_point(colour="white",shape=21,size=4,fill="Tomato")

R语言可视化美化折线图、平滑曲线及路径图的方法

默认的折线线条位置参数应该position=identity,我们也可以尝试使用其他几个参数

ggplot(iris,aes(Sepal.Length,Sepal.Width,colour=Species))+geom_line(position="identity")+geom_point(colour="white",shape=21,size=4,fill="Tomato")

R语言可视化美化折线图、平滑曲线及路径图的方法

ggplot(iris,aes(Sepal.Length,Sepal.Width,colour=Species))+geom_line(position="stack")+geom_point(colour="white",shape=21,size=4,fill="Tomato",position="stack")

R语言可视化美化折线图、平滑曲线及路径图的方法

ggplot(iris,aes(Sepal.Length,Sepal.Width,colour=Species))+geom_line()+facet_grid(.~Species)+geom_point   (colour="white",shape=21,size=4,fill="Tomato")   #分面组图:

R语言可视化美化折线图、平滑曲线及路径图的方法

ggplot(iris,aes(Sepal.Length,Sepal.Width,colour=Species))+geom_line()+facet_grid(.~Species)+geom_point   (colour="white",shape=21,size=4,fill="Tomato") +theme_wsj("rgby","")+scale_colour_wsj()+ggtitle("line plot")+guides(colour=guide_legend(title=NULL))  

R语言可视化美化折线图、平滑曲线及路径图的方法

ggplot(iris,aes(Sepal.Length,Sepal.Width,colour=Species))+geom_line()+facet_grid(.~Species)+geom_point   (colour="white",shape=21,size=4,fill="Tomato") +theme_economist()+scale_colour_economist()+ggtitle("line plot")+guides(colour=guide_legend(title=NULL))  

R语言可视化美化折线图、平滑曲线及路径图的方法

R语言可视化美化折线图、平滑曲线及路径图的方法

“R语言可视化美化折线图、平滑曲线及路径图的方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI