install.packages(“readxl”)
library(readxl)
dataset<-read_excel(path=“./records_data.xlsx”,sheet=”Fe”,range=”A2:G18”)
path参数表明文件的路径,有两种方式
1、绝对路径 即直接写成path=”D:/R/xxx.xlsx”
2、相对路径 首先通过函数getwd()获得当前工作空间路径,例如getwd()显示的结果是
D:/R/Rstudio 而数据储存在D:/R/records_data.xlsx,则相对路径可以写为 ./records_data.xlsx ./的意思是当前目录(即D:/R/) 扩展:../代表的是父目录
sheet参数表明取哪一张sheet,默认是第一页
range参数表明取的数据范围
str(dataset)
因为我们的day应该作为一种分类变量,而不是数值型
dataset$day<-factor(dataset$day)
factor函数就是使某一变量类型变成分类变量
因为做点图或是线图都是二维的 即x-y型,而目前的数据格式为:
day fe1 fe2
avg sd
0 5 6 5.5 1
我们需要的数据格式应是下面这种形式的:
day
variable value
0 fe1
5
0 fe2
6
0 avg 5.5
0 sd
1
这样就形成了一一对应的形式x轴对应day变量,y轴对应
value变量,而
variable相当于名字
install.packages(“reshape2”)
library(reshape2)
dat.m<-melt(data=dataset,id.vars=”day”)
dat.m
dat.m2<-dat.m[dat.m$
variable %
in% c(“Fe1,”Fe2”,”
avg”)],)
这行的直观解释就是,提取
variable的名称在向量(“Fe1”,”Fe2”,”
avg”)中的所有行
dat.m[行,列]
这儿需要所有的列,因此逗号后什么都不写,逗号前为提取的行的条件
%
in% 的意思是 “在集合内”
p<-ggplot(data=dat.m2,aes(x=day,y=
value,group=
variable,colour=
variable))
aes里面group参数的意义:按照
variable进行分类,放在这个例子中,就是
variable=Fe1的
value为一组,
variable=Fe2的
value为一组
colour参数的意义:将作为分组的那些变量,根据一定的规则映射到了颜色上,即:
能够使不同的分组自动分配不同的颜色
line<-p+geom_line()
line
line<-
line+scale_color_discrete(name=”不同种类的Fe离子”)
line
line<-
line+xlab(“天数”)+ylab(“值”)
line