R语言画图——添加数学表达式和R2(Ⅱ)

前言

胸卡没有想到随手写的博客竟然得到了那么多的关注!

一天的访问量直接破千,而且还得到了大神的鼓励!(激动)

估计大家是被这个标题吸引。(哈哈)

果然,天下苦R添加数学表达式久矣

然而,第二篇博客还有很多细节没有完善,这次附上代码和精讲。

以后,胸卡会分享平时画图的一些小技巧,欢迎喜欢R语言的朋友一起交流。

那我们直接进入正题!

正文

一般我们在R上使用 geom_smooth()函数来添加一系列的平滑曲线。

但是某些参考书给出的方法实在是有限,而且超级不好用。

胸卡在初次使用R作图的时候也是被搞得很难受,找了好久的代码。

这次,直接使用stat_function()函数完成作图。

首先,给出代码:

a <- c(1, 2, 3, 4, 5)
b <- c(5, 4, 3, 2, 1)c <- data.frame(a, b)library(ggplot2)p <- ggplot(data = c, aes(x = a, y = b)) + geom_point() + geom_smooth(method = "lm", color = "red")p

图1如下:

通过拟合得知:函数为y = -x + 6 , R^2 = 1

我们可以通过 stat_function()函数直接拟合曲线。
代码如下:

p <- ggplot(data = c, aes(x = a, y = b)) + geom_point() + stat_function(fun = function(x)-1*x+6, color = "orange", size = 1) p

图2如下:

最后,使用annotate()函数添加文本。

p <- ggplot(data = c, aes(x = a, y = b)) + geom_point() + stat_function(fun = function(x)-1*x+6, color = "orange", size = 1) +annotate("text", x = 4, y = 5, parse = TRUE, label = "y == -x+6", size = 4) +annotate("text", x = 4, y = 4.5, parse = TRUE, label = "atop(R^2==1)", size = 4) p

图3如下:

补充1:上下标代码

在图3中,我们还用到了上标代码,atop()函数。
同时,在这里也给出下标的代码。

p <- ggplot(data = c, aes(x = a, y = b)) + geom_point() + stat_function(fun = function(x)(-1)*x+6, color = "orange", size = 1) +annotate("text", x = 4, y = 5, parse = TRUE, label = "y == -x+6", size = 4) +annotate("text", x = 4, y = 4.5, parse = TRUE, label = "atop(R^2==1)", size = 4) +annotate("text", x = 4, y = 4, parse = TRUE,    #下标label = "x[1]==x[2]", size = 4)p

如图:

补充2 其他函数

如果是其他函数则直接这样编写代码:

#指数函数
stat_function(fun = function(x)1.5015*exp(x*(-0.009)), size = 1)  +
annotate("text", x = 25, y = 2.5, parse = TRUE,  label = "y == 1.5015*e^{-0.009*x}")#二次函数:
stat_function(fun = function(x)-90.613*x+630.42*x^2+4.3696, size = 1) +
annotate("text", x = 0.09, y = 2.51, parse = TRUE, label = "y == 630.42*x^{2}-90.613*x+4.3696") #注意:这里的上标使用{}表达

有不明白的地方,欢迎在评论区讨论,也请大家批评指正。

R语言画图——添加数学表达式和R2(Ⅱ)相关推荐

  1. R语言画图/绘图/作图2

    R语言画图/绘图/作图2 动画气泡图 可以使用该gganimate包实现动画气泡图.它与气泡图相同,但是,您必须显示值如何在第五维(通常是时间)上变化. 要做的关键是将 设置为aes(frame)要在 ...

  2. 用计算机怎么计算r角度,R语言中的数学计算

    原标题:R语言中的数学计算 前言 R是作为统计语言,生来就对数学有良好的支持,一个函数就能实现一种数学计算,所以用R语言做数学计算题特别方便.如果计算器中能嵌入R的计算函数,那么绝对是一种高科技产品. ...

  3. R语言中的数学计算(转载)

    R语言中的数学计算 关于作者: 张丹(Conan), 程序员Java,R,PHP,Javascript weibo:@Conan_Z blog: http://blog.fens.me email: ...

  4. linux r语言画图,R语言︱画图

    笔者寄语:不论画啥,你先plot准没错. plot 二维坐标绘图 dotchart 点图 barplot 条形图 hist 直方图 pie 饼图 points 添加点 lines 添加线 text 添 ...

  5. R语言eval函数评估表达式或者字符串实战

    R语言eval函数评估表达式或者字符串实战 目录 R语言eval函数评估表达式或者字符串实战 #基本语法 #eval函数评估表达式

  6. R开发(part2)--R语言中的数学计算

    学习笔记,仅供参考,有错必纠 参考自:<R的极客理想>-- 张丹 文章目录 R开发 R语言中的数学计算 对数 加权平均.连乘.差分.秩.任意数.全体数 阶乘.组合.排列 累加.累乘.最小累 ...

  7. R语言画图的实例分析,坐标轴,图例等设置

    通过一个具体的案例对R语言的画图进行分析,主要包括辅助线的添加,plot()函数的基本参数设置,以及图例坐标轴的设置. 案例分析 ##数据的输入, dose  <- c(20, 30, 40, ...

  8. R 语言画图中英文字体解决方案

    在某些时候,需要在 R 画图中添加中文,但是默认情况下,R 对中文的支持不好.这里推荐一个showtext的 R 包.如果需要将含有中文字体的图形保存为 pdf 文件,可以使用下面讲到的方案,最新版的 ...

  9. R语言画图功能到底有多厉害,看看就知道了

    人们都说R语言的画图能力很强,但到底有多强,很少人见过吧.今天,我们就要R语言来画画地图,看看有多么简单. R语言身为一名开源语言,身后有世界各地的大牛在为他开发.到目前位置,R语言已经有了8000多 ...

最新文章

  1. linux用户和文件目录管理
  2. 几个进程管理的命令:pkill,pidof,kill,killall,job
  3. Nature子刊 | 研究人员提出神经脆性可作为癫痫发作区(SOZ)的脑电图(EEG)标志物
  4. 采用8种相位,每种相位各有两种幅度的QAM调制方法,在1200Baud的信号传输速率下能达到的网数据传输速率为( )
  5. 科普向,什么是 Lua 语言?
  6. linux设置时间快1小时,LINUX CentOS系统时间与现在时间相差8小时解决方法
  7. Linux上构建一个RADIUS服务器详解
  8. 入门机器学习(十八)--异常检测(Anomaly Detection)
  9. eclipse 启动服务后,部署的文件一直是旧的文件的原因分析
  10. python pytest setupclass_python – Pytest – 如何将参数传递给setup_class?
  11. android绑定服务空指针,android aidl问题空指针的问题
  12. 微信⼩程序——wxParse使⽤⽅法
  13. Spring Security系列之基本原理
  14. 卷积神经网络的现代雏形——LeNet
  15. Makefile中wildcard函数的应用理解
  16. css 常用的各种中文字体
  17. 【檀越剑指大厂--mysql】mysql高阶篇
  18. 复数的概念及运算(复变函数)
  19. 拼多多token延长时间
  20. 【读书笔记】explain详细解释

热门文章

  1. 微信小程序红包(优惠劵)弹窗的实现
  2. 计算机c盘删除的文件怎么找回,电脑C盘里面文件误删了,不能开启电脑了,怎么办?...
  3. python scripts文件夹里面没有pip.exe怎么办?
  4. 成绩查询源码mysql_基于PHP+MYSQL的成绩查询系统(含源码)
  5. hub_thread
  6. 一文看懂Pinterest如何构建时间序列数据库系统Goku
  7. 鸿蒙系统是开放系统还是封闭系统,鸿蒙系统三挑战:应用如何兼容,生态怎么搭建,开放还是闭合...
  8. SQL server 嵌套查询
  9. systemVerilog Assertion (SVA)断言语法
  10. ABAP中CA CS CO用法