R语言数据分析及可视化

R语言绘图基础篇-线图(geom_line)

2021-10-08  本文已影响0人  R语言搬运工

此文内容首发于微信公众号:R语言搬运工,关注公众号浏览更多精彩内容

原文链接

image

折线图用来表示数据的波动趋势,可以是非连续的x轴上y值的高低,也可以是连续性x轴上y值的变化趋势。#

▉ 非连续型的X轴

首先整理数据

df <- data.frame(season=c("Spring", "Summer", "Autumn","Winter"),
                 temp=c(22.5, 28.2, 23.1,9.3))
df2 <- data.frame(year=rep(c("2020", "2021"), each=4),
                  season=rep(c("Spring", "Summer", "Autumn","Winter"),2),
                  temp=c(22.5, 28.2, 23.1,9.3,23.1,27.5,21.2,6.7))

上面的数据是小编自己设置的,代表了2020年和2021年春夏秋冬四个季度的参数(具体什么参数没有意义,只是用来绘图用的)
然后绘制线图

ggplot(df,aes(x=season,y=temp,group=1))+
  geom_line()
image.png

看起来不是特别的美观

没关系

开始修图

首先添加点图进去:

image.png
然后修改线的类型及颜色
image.png

tip:这里既然提到了线的类型,把名字和线形贴一下:


image.png

▉ 添加分组变量的折线图

绘制折线图时添加分组变量得到多重折线图,以示例数据展示


image.png
p1 <- ggplot(df0,aes(x,y,shape=class),group=1)+
  geom_line()+
  geom_point(size=4)
  
p2 <- ggplot(df0,aes(x,y,fill=class),group=1)+
  geom_line()+
  geom_point(size=4,shape=21)

p3 <- ggplot(df0,aes(x,y,fill=class,linetype=class),group=1)+
  geom_line()+
  geom_point(size=4,shape=21)
image.png
由左至右分别为p1,p2,p3
图中有个细节一般不会引起注意,p3图的图例和p2与p1有不同之处,由于在绘制图p3的时候,颜色和线性都映射了变量class,因此在添加图例的时候两者同时出现。这里顺便提一下,很多学习者在绘图的时候两个映射会在图例中分开显示,这主要是因为代码中没有对两个映射设置相同的参数,包括水平和名称,这一点以后再单独细讲。

除了将颜色和线性映射给分类变量外,开可以将折线图的线宽映射给连续型变量:


image.png

▉ 两折线图间填充颜色

当绘制了两条折线图时,可以尝试在两者之间填充一定的颜色,这样会使得图像更加的美化,如下图


image.png

代码如下:

huron <- data.frame(year = 1875:1972, level = as.vector(LakeHuron))
h <- ggplot(huron, aes(year))

h+geom_ribbon(aes(ymin = level - 1, ymax = level + 1), fill = "skyblue") +
  geom_line(aes(y=level - 1),color="red")+
  geom_line(aes(y= level + 1),color="blue")

写在文末:

文章首发于公众号:R语言搬运工
关注带来更多精彩
原文链接

上一篇下一篇

猜你喜欢

热点阅读