笔者寄语:不论画啥,你先plot准没错。

plot 二维坐标绘图
dotchart 点图
barplot 条形图
hist 直方图
pie 饼图
points 添加点
lines 添加线
text 添加文字
title 添加标题
boxplot 箱线图

1、plot函数

##画图
plot(x~y,xlab="",ylab="",main="",xlim=c(0,45),ylim=c(0,45),pch=18,col=2,cex=5)
#xlab/ylab,xy标题
#main,主标题
#xlim,ylim,xy线段范围
#pch,点的类型(圆形、棱形等)
#col,线条的颜色
#cex,点的大小

2、分块展示

#预先在数据框中分块,2*2分块
par(mfrow=c(2,2),mar=c(3,3,2,1))
par(del)                           #画好需要关闭

3、箱型图

#箱型图
boxplot(x~y,data=iris)  #依据y分类,求得x的箱型图

4、条形图

#条形图
barplot(x,beside=T,col=rainbow) #beside=T代表邻接条形图,F代表堆砌

5、直方图

#直方图
hist(iris$Petal.Width,freg=F)  #freg=F,概率=频率/组距(离散概率密度特有的公式),当组距为1时,概率等于频率

加入一些其他元素——先

hist(iris$Petal.Width,freg=T)  #freg=T,频率
lines(density(iris$Petal.Width),col=4) #概率密度
lines(x,dnorm(x,mean(iris$Petal.Width),sd(iris$Petal.Width)),col=red)#正态密度曲线

6、QQ图

#QQ图——检验正态性
qqnorm(x)
qqline(x)
shapiro.test(x)  #正态性检验

7、带形图

#带形图
strpchart(y~x,vert=T,pch=1,method="jiter",jit=0.05)
point(x,y,pch=16,cxe=1.5)
arrows(x,y,x,y+se)
arrows(x,y,x,y-se)

8、克利夫兰图

#克利夫兰图
dotchart

9、组合图

#组合图
pairs(iris[,2:4])
plot(iris[,2:4])  #与上面一样

10、雷达图

##雷达图
stars(x,full=F,draw.segments = T,key.loc =c(5,0.5) , mar =c(2,0,0,0) )
#full=F,代表半圆
#segments代表一段一段画
#注释图标位置
#图边距

11、直方图+帕累托图结合

帕累托图可以实现,同类元素的贡献率比较。

<span style="font-family: 'Microsoft YaHei'; font-size: 18px;">dishdata=read.csv(file="./data/catering_dish_profit.csv",header=TRUE)
barplot(dishdata[,3],col="blue1",names.arg=dishdata[,2],width=1,space=0,ylim=c(0,10000),xlab="菜品",ylab="盈利:元")
accratio=dishdata[,3]
for ( i in 1:length(accratio)){
  accratio[i]=sum(dishdata[1:i,3])/sum(dishdata[,3])
}</span><span style="font-family:Microsoft YaHei;font-size:18px;">
</span>

先做一个直方图,然后把数据,以点的形式加入直方图中。

<span style="font-family:Microsoft YaHei;"><span style="font-size: 18px;">par(new=T,mar=c(4,4,4,4))
points(accratio*10000~c((1:length(accratio)-0.5)),new=FALSE,type="b",new=T)
axis(4,col="red",col.axis="red",at=0:10000,label=c(0:10000/10000))
mtext("累积百分比",4,2)
points(6.5,accratio[7]*10000,col="red")
text(7,accratio[7]*10000,paste(round(accratio[7]+0.00001,4)*100,"%")) </span><span style="font-size:18px;">
</span></span>

point加点;axis右边坐标轴,mtext右边坐标轴的名称,text给出本文。


12、图形添加物

有添加线lines、点points、图例legend等其他。

legend(x, y, legend, ...) :在当前图的特定位置增加图例(legend)。标识字符,线条格式,颜色等都是被字符向量legend 中的标签所注释。另外一个含有画图单位对应值的参数v (一个和legend 长度一致的向量)是必须给定的:

legend(x,y,fill=v,col=v,lty=v, lwd=v,pch=v)
#legend( , fill=v)填充盒子的颜色
#legend( , col=v)点或者线条的颜色
#legend( , lty=v)线条样式
#legend( , lwd=v)线条宽度
#legend( , pch=v)标识字符(字符向量)

详细可参考:http://blog.sina.com.cn/s/blog_5de124240101q5vw.html

R语言︱画图的更多相关文章

  1. R 语言画图的基本参数

    R 语言画图的基本参数 点 点的种类 点的种类参数为 pch,每一种符号对应一个数字编号 # 点有25种,为了展示25种点 x = 1:25 y = 1:25 x ## [1] 1 2 3 4 5 6 ...

  2. R语言画图教程之盒形图

    R语言画图教程之盒形图 我们之前有分享过一系列的R语言画图代码(PCA图.Pathway图.火山图.RDA图.热图),今天再来补充一个盒形图(箱形图)的代码. 以下代码只是示例,不能直接搬来用哦,注意 ...

  3. R语言画图小结

    本文以1950年到2010年期间我国的火灾统计数据为例,数据如下所示: (0)加载数据 data<-read.csv("E:\\MyDocument\\p\\Data\\1950~20 ...

  4. [R语言画图]气泡图symbols

    绘制气泡图主要使用函数symbols(x,y,circle=r).当中x.y是坐标轴,r是每一个点的半径. x<-rnorm(10) y<-rnorm(10) r<-abs(rnor ...

  5. R语言画图实例-参考R语言实战

    dose <- c(, , , ,) drugA <- c(, , , , ) drugB <- c(, , , , ) # 数据准备 opar <- par(no.reado ...

  6. R语言画图布局摆放(layout)

    require(ggplot2) require(Cairo) require(grid) p = ggplot(iris,aes(x = Species,y = Sepal.Length,colou ...

  7. R语言画图基础参数设置

    Graphical Parameters You can customize many features of your graphs (fonts, colors, axes, titles) th ...

  8. R语言画图

    转http://www.cnblogs.com/jiangmiaomiao/p/6991632.html 0 引言 R支持4种图形类型: base graphics, grid graphics, l ...

  9. R语言画图,根据正负值画不同颜色,并且画水平线或者垂直线

    col=ifelse(x<0, "blue", "red") #如果x值为负值,用蓝色表示,反之,用红色表示 abline(v=0,col="g ...

随机推荐

  1. pytho字符串处理内置方法一览表

    序号 方法及描述 1 capitalize()将字符串的第一个字符转换为大写 2 center(width, fillchar) 返回一个指定的宽度 width 居中的字符串,fillchar 为填充 ...

  2. JetBrains Pycharm 破解+汉化

    准备材料: 1.JetBrains Pycharm    传送门:  https://pan.baidu.com/s/1qZCpIR6 密码: rvrn 2.JetbrainsCrack-2.6.2. ...

  3. 不要用for循环去遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

  4. 夏令营提高班上午上机测试 Day 3 解题报告

    今天的题的确水.T3还是一道NOIP原题. 嘛,多刷点水题也不是什么坏事嘛. 说来也快,夏令营结束了整一星期了呢.大家也都回到了日常的暑假生活呢. 今天学业水平测试出成绩了...嗯结果还算满意呢,至少 ...

  5. User Parameters(用户参数)

      User Parameters(用户参数),这个是整个zabbix的重点 Zabbix有很多内置的itemkey,但是这些key都是由Zabbix定义好的比较通用的监控项的实现, 如果我们自己想实 ...

  6. 理解Java类加载机制(译文)

    理解java类加载机制 你想写类加载器?或者你遇到了ClassCastException异常,或者你遇到了奇怪的LinkageError状态约束异常.应该仔细看看java类的加载处理了. 什么是类加载 ...

  7. ionic2+Angular web端 实现微信分享以及如何跳转回分享出去的页面

    微信分享,首先参考微信JS-SDK开发文档. step1:在启动文件index.html中引入微信js文件: <script src="http://res.wx.qq.com/ope ...

  8. Chrome浏览器的使用

    1 切换Tab 方法一: Ctrl+Tab键,标签页往前循环,或者说往右循环.Ctrl+Shift+Tab键,标签页往后循环,或者说往左循环 方法二: Ctrl + 数字键 Ctrl + 1 : 切换 ...

  9. Mac下安装php5.6/7.1

    安装环境 OS X EI Capitan 10.11.4 Homebrew安装 homebrew是一个类似于ubuntu中apt-get的一个软件管理器,安装比较简单,在命令行中输入如下代码: rub ...

  10. configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.

    Apache在2.4版本以后,编译时: # ./configure \ --prefix=/usr/local/apache2 \ --with-included-apr \ --enable-so ...