迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

使用 R 中的 Lines() 函数在绘图中添加一条线

作者:迹忆客 最近更新:2023/03/21 浏览次数:

本文将介绍如何使用 R 中的 lines() 函数在绘图中添加一条线。

在 R 中使用 lines() 函数的绘图中添加一条线

lines() 函数是 R graphics 包的一部分,用于向绘图添加线条。首先,应该调用 plot 函数来构造一个图,其中有一个由前两个参数指定的变量映射。请注意,表示 y 轴坐标的第二个参数是可选的。绘制绘图后,我们可以调用 lines() 函数并根据需要传递坐标向量以将线条添加到绘图中。plot 函数不需要为 lines() 函数绘制折线图。

library(stats)
library(babynames)
library(dplyr)

plot(cars$speed, cars$dist, type = "l", col = "red",
     main = "Title of the Plot",
     xlab = "Speed (mph)",
     ylab = "Stopping Distance (Feet)")

lines(cars$speed, cars$dist/4 , col = "green")

legend("topleft", c("line 1", "line 2"),
       lty = c(1,1),
       col = c("red", "green"))

添加线到绘图

在 R 中使用 points 的绘图中添加点

lines() 函数类似,graphics 包提供了 points() 函数来在图中绘制点。以下示例演示了在同一绘图上进行两条线和点映射的场景。但是请注意,原始折线图是使用 plot 函数绘制的。

library(stats)
library(babynames)
library(dplyr)

plot(cars$speed, cars$dist, type = "l", col = "red",
     main = "Title of the Plot",
     xlab = "Speed (mph)",
     ylab = "Stopping Distance (Feet)")
points(cars$speed, cars$dist, col = "blue" )

lines(cars$speed, cars$dist/4 , col = "green")
points(cars$speed, cars$dist/4 , col = "black")

legend("topleft", c("line 1", "line 2"),
       lty = c(1,1),
       col = c("red", "green"))

向线图添加点

plotlines 函数调用顺序影响绘图的比例

有时,使用第一个函数调用映射的数据的比例不足以进行后续映射。下一个代码片段显示其中一条线几乎超出了图中的边界。

library(stats)
library(babynames)
library(dplyr)

dat <- babynames %>%
  filter(name %in% c("Alice")) %>% filter(sex=="F")
dat2 <- babynames %>%
  filter(name %in% c("Mary")) %>% filter(sex=="F")

plot(dat$year, dat$n, type = "l", col = "blue",
     main = "Women born with different names",
     xlab = "Year",
     ylab = "Number of babies born")
lines(dat2$year, dat2$n, col = "red")

绘图和线条函数

请注意 ,可以通过手动重新排序行来解决上一个问题,如下例所示。但是,更复杂的脚本可能需要构造条件语句并动态检查 y 轴数据的最大值。

library(stats)
library(babynames)
library(dplyr)

dat <- babynames %>%
  filter(name %in% c("Alice")) %>% filter(sex=="F")
dat2 <- babynames %>%
  filter(name %in% c("Mary")) %>% filter(sex=="F")
dat3 <- babynames %>%
  filter(name %in% c("Mae")) %>% filter(sex=="F")

plot(dat2$year, dat2$n, type = "l", col = "blue",
     main = "Women born with different names",
     xlab = "Year",
     ylab = "Number of babies born")
lines(dat$year, dat$n, col = "red")
lines(dat3$year, dat3$n, col = "orange")

legend("topright", c("Mary", "Alice", "Mae"),
       lty = c(1,1,1),
       col = c("blue", "red", "orange"))

重新排序绘图和线函数

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

R 中具有多个条件的函数向量化

发布时间:2023/03/21 浏览次数:64 分类:编程语言

一项常见的数据分析任务是根据同一行的其他列使用一个或多个条件创建或更新数据框列。 如果我们尝试使用 if 语句来执行此操作,则只会使用第一行来测试条件,并且会根据该行更

在 R 中读取 xlsx 文件

发布时间:2023/03/21 浏览次数:66 分类:编程语言

在这篇文章中,你将会了解到两个在 R 中读取 xlsx 文件的最完整和最容易使用的库:readxl 和 openxlsx。

清理 R 的环境

发布时间:2023/03/21 浏览次数:178 分类:编程语言

在本教程中,你将学习如何在 R 中编写一个函数,在不需要重新启动 R 的情况下清除环境。

在 R 中注释掉多行

发布时间:2023/03/21 浏览次数:63 分类:编程语言

在本文中,你将学习如何在 R 中注释出多行,而不必在每一行的开头手动写一个#字符来注释。

在 R 中清除内存

发布时间:2023/03/21 浏览次数:197 分类:编程语言

在本教程中,你将学习如何清除 R 系统占用的内存,而不必重新启动它或重新启动它运行的计算机。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便