2022-10-23 R绘图第二节

##练习1
x=sample(1:20,10)
y=sample(1:20,10)
lmout <- lm(y~x)
plot(x,y)
abline(lmout,col="red",lwd=2,lty=2)

#hist直方图
#绘制分12组的频数分布直方图
data <- iris
hist(x=data$Sepal.Width,breaks=12)
min(data$Sepal.Width)
max(data$Sepal.Width)
hist(x=data$Sepal.Width,breaks=12,freq = F)
#添加一条密度曲线
lines(density(data$Sepal.Width))

hist(x=data$Sepal.Width,breaks=c(2,2.5,3,3.5,4,4.5))
hist(x=data$Sepal.Width,breaks=c(2,2.5,3,3.5,4,4.5),col="pink")
hist(x=data$Sepal.Width,breaks=c(2,2.5,3,3.5,4,4.5),col=c(4,7,3))

#加斜线
hist(x=data$Sepal.Width,breaks = 12,density = 5,angle = 60)
hist(x=data$Sepal.Width,breaks = 12,density = 5,angle = 90)
#加颜色和边框
hist(x=data$Sepal.Width,breaks=12,angle = 60,density=19,col="red",border="black")

#不加斜线,直接填充颜色
hist(x=data$Sepal.Width,breaks = 12,col="red")

##加标题,x轴标签,y轴标签
hist(x=data$Sepal.Width,breaks = 12,
     main="直方图",xlab="叶片宽度",ylab="频数")

##设置x,y轴范围
hist(x=data$Sepal.Width,breaks=12,main="直方图",xlab="叶片宽度",
     ylab="频数",xlim=c(2,4.5),ylim=c(0,40))

##加数据标签
hist(x=data$Sepal.Width,breaks=12,main="直方图",xlab="叶片宽度",
     ylab="频数",xlim=c(2,4.5),ylim=c(0,40),labels=TRUE)

##去掉坐标轴
hist(x=data$Sepal.Width,breaks=12,main="直方图",xlab="叶片宽度",
     ylab="频数",xlim=c(2,4.5),ylim=c(0,40),labels=TRUE,axes=F)
##结合plot
hh <- hist(x=data$Sepal.Width,breaks=12,plot=F)
plot(hh,col="lightblue",border="white",main="直方图",xlab="叶片宽度",
     ylab="频数",xlim=c(2,4.5),ylim=c(0,40),labels=TRUE,axes=F)

#再加上一条密度曲线
plot(hh,freq=F,col="lightblue",border="white",main="直方图",xlab="叶片宽度",
     ylab="频数",xlim=c(2,4.5),labels=TRUE)
lines(density(data$Sepal.Width),lwd=2,lty=2,col="red")


##箱线图boxplot()
boxplot(mpg~cyl,data=mtcars,xlab="气缸数",ylab="每加仑里程",main="里程数",
        notch=TRUE,col=c(1,2,3),names=c("高","中","低"))

##保存图
png(file="boxplot.png")

boxplot(mpg~cyl,data=mtcars,xlab="气缸数",ylab="每加仑里程",main="里程数",
        notch=TRUE,col=c(1,2,3),names=c("高","中","低"))
dev.off()

##############################

#par()
data <- read.csv("data_par.csv")
par(mfrow=c(2,2))
#散点图·
plot(data$AGE,data$SAL)
#直方图
hist(data$SAL)
#箱线图
boxplot(data$SAL)
#条形图
barplot(table(data$SAL))

library(ggplot2)
df <- read.csv("Facet_Data.csv")
p1 <- ggplot(df,aes(x=SOD,y=tau,size=age))+
  geom_point(shape=21,color="black",fill="#336A97",stroke=0.25)
p2 <- ggplot(df,aes(x=SOD,y=tau,size=age,fill=age))+
  geom_point(shape=21,color="black",stroke=0.25,alpha=0.8)



p3 <- ggplot(df,aes(x=SOD,y=tau,fill=Class))+
  geom_point(shape=21,size=5,colour="black",stroke=0.25)


p4 <- ggplot(df,aes(x=SOD,y=tau,fill=Class,size=age))+
  geom_point(shape=21,size=5,colour="black",stroke=0.25,alpha=0.5)

p5 <- ggplot(df,aes(x=SOD,y=tau,size=age))+
  geom_point(shape=21,color="black",fill="#E53F2F",stroke=0.25,alpha=0.8)+
  scale_size(range=c(1,8))


p6 <- ggplot(df,aes(x=SOD,y=tau,fill=age,size=age))+
  geom_point(shape=21,color="black",stroke=0.25,alpha=0.8)+
  scale_size(range=c(1,8))+
  scale_fill_distiller(palette="Reds",direction = 0)



p7 <- ggplot(df,aes(x=SOD,y=tau,fill=Class,shape=Class))+
  geom_point(size=3,colour="black",stroke=0.25)+
  scale_fill_manual(values=c("red","pink","blue"))+
  scale_shape_manual(values=c(21,22,23))


p8 <- ggplot(df,aes(x=SOD,y=tau,fill=Class,size=age))+
  geom_point(shape=21,colour="black",stroke=0.25,alpha=0.8)+
  scale_fill_manual(values=c("#36BED9","#FF0000","#FBAD01"))+
  scale_size(range=c(1,8))

你可能感兴趣的:(2022-10-23 R绘图第二节)