当前位置: 首页 > backend >正文

【R语言编程绘图-折线图】

安装与加载GGPLOT2库

确保已安装ggplot2库,若未安装可通过以下命令安装:

install.packages("ggplot2")

加载库:

library(ggplot2)

准备数据

假设有一个包含时间序列数据的数据框df,包含两列:date(日期)和value(数值)。示例数据生成:

df <- data.frame(date = seq(as.Date("2023-01-01"), as.Date("2023-12-31"), by = "month"),value = c(15, 18, 22, 25, 30, 28, 26, 24, 20, 18, 16, 14)
)

基础折线图绘制

使用geom_line()绘制折线图:

ggplot(df, aes(x = date, y = value)) +geom_line()

自定义折线图样式

调整线条颜色、粗细和添加点标记:

ggplot(df, aes(x = date, y = value)) +geom_line(color = "blue", linewidth = 1) +geom_point(color = "red", size = 3)

添加标题与坐标轴标签

通过labs()函数设置标题和标签:

ggplot(df, aes(x = date, y = value)) +geom_line(color = "blue") +labs(title = "Monthly Value Trends (2023)",x = "Date",y = "Value")

调整坐标轴格式

例如将日期格式化为月份缩写:

ggplot(df, aes(x = date, y = value)) +geom_line(color = "blue") +scale_x_date(date_labels = "%b") +labs(title = "Monthly Trends", x = "Month", y = "Value")

多系列折线图

若数据包含分组(如category列),可通过aes(color)区分不同系列:

df_multi <- data.frame(date = rep(seq(as.Date("2023-01-01"), as.Date("2023-06-01"), by = "month"), 2),value = c(15, 18, 22, 25, 30, 28, 10, 12, 15, 18, 20, 22),category = rep(c("A", "B"), each = 6)
)ggplot(df_multi, aes(x = date, y = value, color = category)) +geom_line() +labs(title = "Multi-Series Line Chart")
# 加载必要的库
library(ggplot2)# 生成数据
df <- data.frame(date = seq(as.Date("2023-01-01"), by = "day", length.out = 100),value = cumsum(rnorm(100))
)# 绘制折线图
p <- ggplot(df, aes(x = date, y = value)) +geom_line(color = "blue", size = 1) +  # 使用蓝色线条,适当调整线条粗细labs(title = "Time Series Plot of Random Values",  # 标题x = "Date",  # X轴标签y = "Cumulative Sum of Random Values") +  # Y轴标签theme_classic() +  # 使用经典主题theme(plot.title = element_text(size = 16, face = "bold", hjust = 0.5),  # 标题样式axis.title = element_text(size = 14, face = "bold"),  # 轴标题样式axis.text = element_text(size = 12),  # 轴刻度标签样式legend.position = "none")  # 移除图例(如果不需要)# 保存为高分辨率图像
ggsave("time_series_plot.png", plot = p, width = 8, height = 6, dpi = 300)# 显示图像
print(p)

在这里插入图片描述

http://www.xdnf.cn/news/9264.html

相关文章:

  • Redis C语言连接教程
  • Linux 环境下C、C++、Go语言编译环境搭建秘籍
  • 常见编码小结
  • 常见JDK安装配置
  • springboot 笔记
  • Redis核心数据结构操作指南:字符串、哈希、列表详解
  • 【K8S】K8S基础概念
  • Java spingboot项目 在docker运行,需要含GDAL的JDK
  • 飞牛fnNAS手机相册备份及AI搜图
  • 博图SCL基础知识-表达式及赋值运算
  • 甲醇 燃料 不也有碳排放吗?【AI回答版】
  • 得物Java开发面试题及参考答案(下)
  • Linux操作系统概述
  • 【Canvas与日月星辰】烈日当空
  • 关于git的使用
  • 【漏洞与预防】Microsoft Windows 文件资源管理器欺骗漏洞预防
  • 【免费】【无需登录/关注】Base64 图片转换工具网页
  • 【Java】DelayQueue
  • LangGraph(七)——Workflows
  • 基于物联网(IoT)的电动汽车(EVs)智能诊断
  • Java组合、聚合与关联:核心区别解析
  • AWS WebRTC:获取信令服务节点和ICE服务节点
  • 深度解读 Qwen3 大语言模型的关键技术
  • 【Elasticsearch】ingest对于update操作起作用吗?
  • Android15 Camera Hal设置logLevel控制日志输出
  • vue2使用el-tree实现两棵树间节点的拖拽复制
  • LeetCode 2894.分类求和并作差:数学O(1)一行解决
  • Java提取markdown中的表格
  • go并发与锁之sync.Mutex入门
  • 国11阶乘约数-质因数分解