• R语言学习笔记(九):中级绘图


    散点图
    
    attach(mtcars)
    
    plot(wt,mpg,main="Basic Scatter plot of MPG vs. Weight",
         xlab="Car Weight (lbs/1000)",
         ylab="Miles Per Gallon",pch=19)
    
    abline(lm(mpg~wt),col="red",lwd=2,lty=1)
    lines(lowess(wt,mpg),col="blue",lwd=2,lty=2)

    library(car)
    scatterplot(mpg~wt|cyl,data=mtcars,lwd=2,span=0.75,main="Scatter Plot of MPG vs. Weight by # Cylinders",
                xlab="Weight of Car(lbs/1000)",ylab="Miles Per Gallon",legend.plot=TRUE,id.method="identify",labels=row.names(mtcars),boxplots="xy")

    library(car)
    scatterplot(mpg~wt|cyl,data=mtcars,lwd=2,span=0.75,main="Scatter Plot of MPG vs. Weight by # Cylinders",
                xlab="Weight of Car(lbs/1000)",ylab="Miles Per Gallon",legend.plot=TRUE,id.method="identify",labels=row.names(mtcars),boxplots="xy")

    #散点图矩阵 包含回归线
    scatterplotMatrix(~mpg+disp+drat+wt,data=mtcars,sprea=FALSE,smoother.args=list(lty=2),main="Scatter Plot Matrix via car Package")

    #高密度散点图
    set.seed(1234)
    n<-10000
    c1<-matrix(rnorm(n,mean=0,sd=.5),ncol=2)
    c2<-matrix(rnorm(n,mean=3,sd=2),ncol=2)
    mydata<-rbind(c1,c2)
    mydata<-as.data.frame(mydata)
    names(mydata)<-c("x","y")
    with(mydata,
         plot(x,y,pch=19,main="Scatter Plot with 10,000 Observations"))

    #热点
    with(mydata,smoothScatter(x,y,main="Scatter Plot Colored by Smoothed Densities"))

    install.packages("hexbin")
    library(hexbin)
    with(mydata,{
      bin<-hexbin(x,y,xbins=50)
      plot(bin,main="Hexagonal Binning with 10,000 Observations")
    })

    #三维散点
    install.packages("scatterplot3d")
    library(scatterplot3d)
    attach(mtcars)
    scatterplot3d(wt,disp,mpg,main="Basic 3D Scatter Plot")
    
    scatterplot3d(wt,disp,mpg,pch=16,highlight.3d = TRUE,type="h",main="3D Scatter Plot with Vertical Lines")
    
    s3d<-scatterplot3d(wt,disp,mpg,pch=16,highlight.3d=TRUE,type="h",main="3D Scatter Plot with Vertical Lines and Regression Plane")
    fit<-lm(mpg~wt+disp)
    s3d$plane3d(fit)

    #旋转三维散点
    install.packages("rgl")
    library(rgl)
    plot3d(wt,disp,mpg,col="red",size=5)
    
    library(car)
    with(mtcars,scatter3d(wt,disp,mpg))

    #气泡图
    attach(mtcars)
    r<-sqrt(disp/pi)
    symbols(wt,mpg,circle=r,inches=0.30,fg="white",bg="lightblue",main="Bubble Plot with point size proportional to displacement",ylab="Miles Per Gallon",xlab="Weight of Car (lbs/1000)")
    text(wt,mpg,rownames(mtcars),cex=0.6)

    #折线图
    opar<-par(no.readonly = TRUE)
    par(mfrow=c(1,2))
    t1<-subset(Orange,Tree==1)
    plot(t1$age,t1$circumference,xlab="Age (days)",ylab="Circumference (mm)",main="Orange Tree 1 Growth")
    plot(t1$age,t1$circumference,xlab="Age (days)",ylab="Circumference (mm)",main="Orange Tree 1 Growth",type="b")
    par(opar)

    #折线图汇总
    par(mfrow=c(1,1))
    Orange$Tree<-as.numeric(Orange$Tree)
    ntrees<-max(Orange$Tree)
    
    xrange<-range(Orange$age)
    yrange<-range(Orange$circumference)
    
    plot(xrange,yrange,type="n",xlab="Age (days)",ylab="Circumference (mm)")
    
    colors<-rainbow(ntrees)
    linetype<-c(1:ntrees)
    plotchar<-seq(18,18+ntrees,1)
    
    for(i in 1:ntrees)
    {
      tree<-subset(Orange,Tree==i)
      lines(tree$age,tree$circumference,type="b",lwd=2,lty=linetype[i],col=colors[i],pch=plotchar[i])
      
    }
    
    title("Tree Growth","example of line plot")
    
    legend(xrange[1],yrange[2],1:ntrees,cex=.8,col=colors,pch=plotchar,lty=linetype,title="Tree")

    #相关图
    install.packages("corrgram")
    library(corrgram)
    corrgram(mtcars,order=TRUE,lower.panel=panel.shade,upper.panel=panel.pie,text.panel=panel.txt,main="Corrgram of mtcars intercorrelations")
    
    corrgram(mtcars,order=TRUE,lower.panel = panel.ellipse,upper.panel = panel.pts,text.panel = panel.txt,diag.panel = panel.minmax,main="Corrgram of mtcars data using scatter plots and ellipses")
    
    corrgram(mtcars,lower.panel = panel.shade,upper.panel = NULL,text.panel = panel.txt,main="Car Mileage Data (unsorted)")

    #马赛克图
    library(vcd)
    mosaic(Titanic,shade=TRUE,legend=TRUE)
    
    library(vcd)
    mosaic(~Class+Sex+Age+Survived,data=Titanic,shade=TRUE,legend=TRUE)

  • 相关阅读:
    第二次作业
    复盘一个商品期货的通用模型
    C#如何获取枚举(Enum)变量的值
    [C#]Socket通信BeginReceive异步接收数据何时回调Callback
    [C#]浮点数除零无法捕获异常的解决办法
    js对字符串进行编码方法总结
    web最全资源网址
    简单粗暴地理解js原型链--js面向对象编程
    常见前端九十道面试题及答案-韩烨
    C语言文件读写,复制
  • 原文地址:https://www.cnblogs.com/GhostBear/p/7736688.html
Copyright © 2020-2023  润新知