R语言中的高级绘图

1、散点图

attach(mtcars)                                                     
plot(wt, mpg, 
     main="Basic Scatterplot 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)   

abline()函数用来添加最佳拟合的线性直线,

lowess()函数则用来添加一条平滑曲线。该平滑曲线拟合是一种基于局部加权多项式回归的非参数方法


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


2、散点图矩阵

(1)library(car)
scatterplotMatrix(~ mpg + disp + drat + wt, data=mtcars, spread=FALSE,
    lty.smooth=2, main="Scatterplot Matrix via car package")


scatterplotMatrix(~ mpg + disp + drat + wt | cyl, data=mtcars, spread=FALSE,
    main="Scatterplot Matrix via car package", diagonal="histogram")

以不同的气缸进行分组


cor(mtcars[c("mpg", "wt", "disp", "drat")])
            mpg         wt       disp       drat
mpg   1.0000000 -0.8676594 -0.8475514  0.6811719
wt   -0.8676594  1.0000000  0.8879799 -0.7124406
disp -0.8475514  0.8879799  1.0000000 -0.7102139
drat  0.6811719 -0.7124406 -0.7102139  1.0000000

使用gclus包绘制散点图矩阵

library(gclus)                                                   
mydata <- mtcars[c(1,3,5,6)]                               
mydata.corr <- abs(cor(mydata))                                                                           
mycolors <- dmat.color(mydata.corr)                              
myorder <- order.single(mydata.corr)                             
cpairs(mydata,                                                   
    myorder, 
    panel.colors=mycolors, 
    gap=.5,
    main="Variables Ordered and Colored by Correlation"
)


3、高密度散点图
当数据点重叠很严重时,用散点图来观察变量关系就显得“力不从心”了。下面是一个人为设计的例子,其中10 000个观测点分布在两个重叠的数据群中:

创建10000个观测数据

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")

(1)
with(mydata,
    plot(x, y, pch=19, main="Scatter Plot with 10000 Observations"))


2、with(mydata,
    smoothScatter(x, y, main="Scatterplot colored by Smoothed Densities"))


3、

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


4、三维散点图

library(scatterplot3d)
attach(mtcars)
scatterplot3d(wt, disp, mpg, 
     main="Basic 3D Scatterplot")


s3d <-scatterplot3d(wt, disp, mpg, 
+     pch=16, 
+     highlight.3d=TRUE,
+     type="h", 
+     main="3D Scatter Plot with Verical Lines and Regression Plane")
> fit <- lm(mpg ~ wt+disp) 
> s3d$plane3d(fit)
> detach(mtcars)


这个三维图可以旋转

library(rgl)
attach(mtcars)
plot3d(wt, disp, mpg, col="red", size=5)


4、气泡图

我们通过三维散点图来展示三个定量变量间的关系。现在介绍另外一种思路:先创建一个二维散点图,然后用点的大小来代表第三个变量的值。这便是气泡图(bubble plot)



attach(mtcars)
r <- sqrt(disp/pi)
symbols(wt, mpg, 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)
detach(mtcars)
par(opar)


5、折线图

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)




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=0.8,                                
    col=colors,                             
    pch=plotchar,                           
    lty=linetype,                           
    title="Tree"                            
    )                                           


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/51144.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

R语言常用的绘图参数

1.点线结构参数 在plot函数中&#xff0c;使用参数type来控制点线输出结构 参数type的取值及定义 参数取值 描述 typep 点 typel线 typeb 点连线 typeo 线穿过点 typeh 悬垂线 types 阶梯线 xc(2,4,6,8,10) xts(x,startc(2010,1)) #将x转换成时序数据&#xff0c…

R语言ggplot2|玩转Manhattan图-你有被要求这么画吗?

Manhattan图算是GWAS分析的标配图了&#xff0c;可参考Bio|manhattan图 进行绘制。 由于Manhattan点太多&#xff0c;后期AI/PS修改的话难度有点大&#xff0c;如果可以“个性化”绘制的话那是极好的&#xff01; 一 载入R包&#xff0c;数据 1&#xff09;载入数据处理的tidyv…

[R语言绘图]plot函数的使用

R语言中最简单的一个绘图函数就是plot了。如果之前用过matlab&#xff0c;用R画图的时候就很可能会尝试plot这个命令能不能使用。plot(a)一般就能得到我们想要的图。但是&#xff0c;如果想进一步设置其他属性&#xff0c;如标题、x轴名称、y轴名称等&#xff0c;还需要对另外的…

R语言绘图之ggplot2

一.基础知识 首先载入tidyverse包 # install.packages("tidyverse") library(tidyverse) 这一行代码加载了tidyverse的核心R包。在几乎所有的数据分析任务中&#xff0c;你都会用到这些R包。这行代码还会告诉你tidyverse中的哪些函数与基础R包&#xff08;或者已加…

R语言(ggplot2绘图)

原文链接&#xff1a;https://wklchris.github.io/R-ggplot2.html ggplot2 的语法与 R 原生的语法并不统一&#xff0c;但是熟悉起来也并不复杂。它主要通过“”连接多个绘图函数&#xff0c;同时允许将绘图结果赋值给其他对象&#xff0c;因此使用起来更加灵活。 ggplot2 最为…

R语言绘图——实用篇 ggplot2绘图

文章目录 R语言绘图——实用篇 ggplot2绘图绘制等值线图相关如何绘制等值线图插值&#xff0c;平滑插值插值&#xff0c;缺失值插值色条(色阶)划分图例的色条(色阶)修改&#xff0c;合理的参数值选用图例的色条(色阶)修改&#xff0c;刻度线修改无效或不显示的问题 地图绘制相关…

R语言ggplot绘图

一、R语言ggplot2绘折线图 读取文件放置的位置&#xff0c;赋予数组名称 library(ggplot2) setwd("E:\\Buffer\\My work\\ggplot_data") diameter <- read.csv("0.031_0.062_ggplot_try.csv", stringsAsFactors FALSE)看看数组里的各种内容 class(d…

R语言基础画图/绘图/作图

R语言基础画图 R语言免费且开源&#xff0c;其强大和自由的画图功能&#xff0c;深受广大学生和可视化工作人员喜爱&#xff0c;这篇文章对如何使用R语言作基本的图形&#xff0c;如直方图&#xff0c;点图&#xff0c;饼状图以及箱线图进行简单介绍。 0 结构 每种图形构成一…

R语言ggplot2绘图

R语言绘图之ggplot2 一.绘图的基本要素1.图形映射2.分面&#xff1a;3.添加平滑曲线 二.绘制条形图设置坐标抽格式 一.绘图的基本要素 首先载入tidyverse包 install.packages("tidyverse") library(tidyverse)​​​​这一行代码加载了tidyverse的核心R包。在几乎所…

R语言---ggplot绘图

散点图 堆积柱形图 library(ggplot2)ggplot(mtcars,aes(mpg,wt))geom_point()簇状柱形图 library(ggplot2) ggplot(mtcars,aes(factor(cyl),fillfactor(am)))geom_bar()直方图 密度图 library(ggplot) ggplot(mtcars,aes(factor(cyl),fillfactor(am)))geom_bar(position&qu…

R语言绘图基础

目录 一、R语言的基本绘图函数 1、高级绘图函数 &#xff08;1&#xff09;plot函数 &#xff08;2&#xff09;其他高级绘图函数 2、低级绘图函数 二、图形参数与图形控制 1、绘图参数 2、图形控制 3、图形颜色 &#xff08;1&#xff09;颜色名称 &#xff08;2&#…

R语言绘图

画图例子 R Graph Cookbook例子 From&#xff1a;http://www.dataguru.cn/article-1766-1.html 今天突然找到一本专门教授R语言绘图的书&#xff0c;R Graph Cookbook&#xff0c;发现还不错。当初喜欢上R语言就是因为它绘图特别好看。下面把这本书的内容&#xff0c;经过我学…

小米手机通用面具安装,root获取

小米手机通用面具安装,root获取 第一篇 环境准备,解锁手机 小米手机,红米手机通用面具安装方法 一 材料准备 电脑一部,没有的朋友可以去网吧小米或红米手机一部,需登录账号7天以上,可以解锁数据线一条,需要能传数据 二 解锁手机 小米有专门的解锁工具,我就不将其下载下来另存…

ADB的安装和使用教程,小米手机连接adb实例演示

首先我们需要下载 adb 的程序包&#xff0c;只要 1M 就好了。也可以通过安装 android sdk 等工具间接安装&#xff0c;可以自行百度。 小蓝枣的资源仓库&#xff0c;提取码: p8h1 adb 的安装 步骤一&#xff1a; 下载后找个位置把它解压一下。 步骤二&#xff1a; 然后把压缩…

android开发:小米手机开发时非要sim卡才能调试怎么办?

问题&#xff1a; 公司新的测试机是小米2s&#xff0c;但是到了安装调试包时&#xff0c;总是安装失败&#xff0c;不管是打开开发者模式&#xff0c;还是启动或者禁止mui优化功能&#xff0c;都一直出现安装不可用&#xff0c;后来往上查了下&#xff0c;是因为小米系统包稳定…

Mobile - 小米手机如何开通应用分身?应用多开?

有时候办公需要使用多个账号&#xff0c;切换多个应用不停地切换很麻烦&#xff0c;那么&#xff0c;怎么让应用多开&#xff0c;同时在一部手机上使用多个相同的应用呢&#xff1f; 工具 / 原料 小米手机 方法 / 步骤 首先打开小米手机的“设置”&#xff0c;向下滑动&#…

小米手机开发者选项打开usb安装需要SIM卡解决办法

前言 最近在做一些安卓的开发&#xff0c;想用之前用过的小米8做测试 但是打开usb调试的usb安装之后却显示需要插入SIM卡 搜索了一下原因&#xff0c;可能是防止黄牛买来装一大堆第三方APP上去然后打包二次销售&#xff0c;影响消费者 解决办法 不用特意去办一张卡&#x…

MIUI 强制跳过 关闭 打开 小米手机 USB安装 USB安全 USB安全设置 应用确认

MIUI 强制跳过 关闭 打开 小米手机 USB安装 USB安全 USB安全设置 应用确认 一、背景和结论 众所周知&#xff0c;小米手机开启 USB 安装功能&#xff0c;需要插入 SIM 卡登陆、需要登小米账号。我这台手机已root&#xff0c;懒得登陆了&#xff0c;就准备通过修改文件的方式来…

小米手机安装 Charles 证书

1、准备工作 首先电脑安装 Charles&#xff08;这个不教&#xff09;&#xff1b; 准备一台小米手机&#xff08;自备&#xff0c;不送&#xff09;&#xff1b; 2、charles 设置代理端口 打开 Charles 的 Proxy > Proxy Settings…&#xff1b;设置代理端口为&#xff1…

小米手机 samba_神仙手机软件!每个都是手机之必备APP!!

大家好,我是越越热爱不止,分享继续,感谢观看。 1.随手存盒 随手存盒是一款可以帮助用户快速找到想要的文件。 它可以一键查看各个平台接收的文件内容,相当于一个文件中转站,并且可以实现不同平台之间的自由传送; 其次此款软件还附带了“电脑管理文件+快传”功能,在同一…