R绘制股票日波动线图 中国海油600938

r 复制代码
# Set the working directory
setwd("C:/Users/czliu/Documents/python")

# Read the CSV file
df <- read.csv("stock_data_numeric.csv")
colnames(df)

# View the first few rows of the data
head(df)

# 处理缺失值
# df <- read.csv("data.csv", na.strings = c("NULL", "?"))  # 读取数据
df <- na.omit(df)  # 移除缺失值

# 转换日期列(确保列名正确,这里是小写的'date')
df$date <- as.Date(df$date)  # 假设原始日期列名为'date'

# 绘制线图
plot(df$close ~ df$date,
     type = "l",
     main = "Stock Price Daily Change",
     xlab = "Date",
     ylab = "Close Price",
     ylim = c(min(df$close), max(df$close))
)

# 添加多条水平刻度线--Advanced

# 1. 平均值 - 红色虚线
mean_price <- mean(df$close)
abline(h = mean_price, col = "red", lwd = 3, lty = 2)

# 2. 中位数 - 蓝色实线
median_price <- median(df$close)
abline(h = median_price, col = "blue", lwd = 3, lty = 1)


# 3. 上下四分位数 - 黑色点线
q1_price <- quantile(df$close, 0.25)
q3_price <- quantile(df$close, 0.75)
abline(h = q1_price, col = "black", lwd = 2, lty = 3)
abline(h = q3_price, col = "black", lwd = 2, lty = 3)

# 添加图例说明
legend("topright", 
       legend = c(paste("Mean: ", round(mean_price, 2)),
                 paste("Median: ", round(median_price, 2)),
                 paste("Q1: ", round(q1_price, 2)),
                 paste("Q3: ", round(q3_price, 2))),
       col = c("red", "blue", "black", "black"),
       lwd = c(2, 2, 1, 1),
       lty = c(2, 1, 3, 3),
       cex = 0.8)

图形

相关推荐
island13142 分钟前
CANN GE(图引擎)深度解析:计算图优化管线、内存静态规划与异构 Stream 调度机制
c语言·开发语言·神经网络
曹牧7 分钟前
Spring Boot:如何在Java Controller中处理POST请求?
java·开发语言
浅念-10 分钟前
C++入门(2)
开发语言·c++·经验分享·笔记·学习
WeiXiao_Hyy10 分钟前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
User_芊芊君子16 分钟前
CANN010:PyASC Python编程接口—简化AI算子开发的Python框架
开发语言·人工智能·python
Max_uuc26 分钟前
【C++ 硬核】打破嵌入式 STL 禁忌:利用 std::pmr 在“栈”上运行 std::vector
开发语言·jvm·c++
故事不长丨27 分钟前
C#线程同步:lock、Monitor、Mutex原理+用法+实战全解析
开发语言·算法·c#
牵牛老人30 分钟前
【Qt 开发后台服务避坑指南:从库存管理系统开发出现的问题来看后台开发常见问题与解决方案】
开发语言·qt·系统架构
froginwe1138 分钟前
Python3与MySQL的连接:使用mysql-connector
开发语言
灵感菇_1 小时前
Java HashMap全面解析
java·开发语言