R语言绘制折线图

折线图是实用的数据可视化工具,通过连接数据点的线段展示数据随时间或变量的变化趋势。在经济、科学、销售及天气预报等领域广泛应用,为决策和分析提供依据。它能清晰呈现经济数据动态、助力科学研究、反映企业销售情况、预告天气变化,以简洁直观和信息丰富的特点发挥重要作用。

0x01 plot() 函数

1.使用plot()函数绘制折线图:

r 复制代码
x <- 1:5
y1 <- c(3, 5, 4, 6, 7)
y2 <- c(2, 4, 7, 5, 6)
y3 <- c(6, 3, 5, 4, 5)
plot(x, y1, type = "l") # type = "l" 表示绘制折线图

2.可以添加标题、坐标轴标签、类型、粗细、颜色等。

r 复制代码
plot(x,y1,main = "折线图",sub = "例1",xlab = "x轴",ylab = "y轴",ylim = c(1,7),col = "red",pch = 3,cex = 1.5,lwd = 2,type = "o")
#type = "o":表示点覆盖在线上,在上一篇散点图的绘制中有写参数。

3.同时还可以使用lines()函数在已经绘制好的折线图上添加其它的折线。

r 复制代码
lines(x, y2,pch = 2,cex = 1.5,lwd = 2,col = "blue",type = "o")
lines(x, y3,pch = 5,cex = 1.5,lwd = 2,col = "green",type = "o")

4.也可以使用legend()函数在图形中添加图例。

(该参数同样适用于前一篇散点图,上一篇忘记补充了,所以写在这里)

r 复制代码
legend("topright",c("y1","y2","y3"),pch = c(3,2,5),col = c("red","blue","green"),bg = "white")
#topright这个参数表示在右上方

0x02 使用 ggplot2包

一、准备数据

首先,需要有用于绘制折线图的数据。通常数据以数据框的形式存在,包含至少两个变量,一个用于表示横坐标(通常是时间或连续变量),另一个用于表示纵坐标(数据值)。

例如:

r 复制代码
library(ggplot2)

# 创建示例数据
data <- data.frame(
  time = 1:5,
  value = c(3, 5, 4, 6, 7),
  group = "Group 1"
)

# 确保 data2 的结构与 data 一致,用于演示后面绘制多条折线图
data2 <- data.frame(
  time = 1:5,
  value = c(2, 4, 5, 7, 8),
  group = "Group 2"
)

二、创建基本图形对象

使用 ggplot() 函数创建一个基本的图形对象,并指定数据和映射关系。通常将横坐标变量映射到 x 美学属性,纵坐标变量映射到 y 美学属性。

r 复制代码
p <- ggplot(data, aes(x = time, y = value))

三、添加折线图层

使用 geom_line() 函数添加折线图层到图形中。

r 复制代码
p + geom_line()

四、添加标题和坐标轴标签

可以使用 ggtitle()xlab()ylab() 函数添加标题和坐标轴标签,使图形更具可读性。

r 复制代码
p + geom_line() +
  ggtitle("Line Plot Example") +
  xlab("Time") +
  ylab("Value")

五、定制折线图

1.改变线条颜色和线型:

可以使用 colorlinetype 参数来改变折线的颜色和线型。

r 复制代码
p + geom_line(color = "blue", linetype = "dashed") +
  ggtitle("Line Plot Example") +
  xlab("Time") +
  ylab("Value")

2.添加数据点:

可以使用 geom_point() 函数在折线上添加数据点,以便更清楚地显示数据值。

r 复制代码
ggplot(data, aes(x = time, y = value, color = group)) +
  geom_line() +
  geom_point() +
  ggtitle("Line Plot with Points Example") +
  xlab("Time") +
  ylab("Value")

3.绘制多条折线:

如果有多个数据集,可以在数据框中添加额外的变量,并使用 aes() 函数将其映射到颜色、线型等美学属性上,以绘制多条折线。

r 复制代码
data <- rbind(data, data2)

ggplot(data, aes(x = time, y = value, color = group)) +
  geom_line() +
  ggtitle("Multiple Line Plot Example") +
  xlab("Time") +
  ylab("Value")
相关推荐
晋人在秦 老K8 分钟前
鼠标连点效率低?MouseClickTool 2.0三步配置,自动化操作提速80% 重复点击太耗时?Windows鼠标连点器实操教程,开发测试效率翻倍
windows·自动化·计算机外设·鼠标连点器·gui模拟点击·自动化点击解决方案
FserSuN12 分钟前
构建基于大语言模型的智能数据可视化分析工具的学习总结
学习·信息可视化·语言模型
shykevin19 分钟前
uni-app x商城,商品列表组件封装以及使用
windows·uni-app
bmcyzs8 小时前
【展厅多媒体】触摸查询一体机实现数据可视化
经验分享·科技·信息可视化·数据挖掘·数据分析·设计规范
CHH321310 小时前
在 Mac/linux 的 VSCode 中使用Remote-SSH远程连接 Windows
linux·windows·vscode·macos
B站_计算机毕业设计之家10 小时前
计算机毕业设计:Python农业数据可视化分析系统 气象数据 农业生产 粮食数据 播种数据 爬虫 Django框架 天气数据 降水量(源码+文档)✅
大数据·爬虫·python·机器学习·信息可视化·课程设计·农业
hqyjzsb12 小时前
2025年市场岗位能力重构与跨领域转型路径分析
c语言·人工智能·信息可视化·重构·媒体·改行学it·caie
kobe_OKOK_13 小时前
windows 下载 pip包,debian离线安装
windows·debian·pip
jarreyer17 小时前
常见分析方法与对应图表汇总
python·信息可视化·数据分析
m***记17 小时前
Python 数据分析入门:Pandas vs NumPy 全方位对比
python·数据分析·pandas