[英]Plotting points on a map but only by certain year
我在 R 做 GIS 的东西,只想从某些年份获得 plot 积分。 我是否需要超集年份,如果需要,我可以超集年份范围吗? 我不完全确定如何制作一个不需要大量时间的可重现示例 - 它似乎与常规绘图不同。
本质上,我如何才能在 map 上只获得数据帧上的某些点? 子集年?
我的积分设置如下
points(x$longitude,y$latitude)
它绘制所有点,一次只需要几年的范围。 谢谢。
当您使用$
运算符时,您正在提取 data.frame x
的一列作为向量。 向量可以是传递给方括号的逻辑向量的子集,返回逻辑值为TRUE
的第 i 个元素,例如c(TRUE, FALSE, TRUE)
传递给c("a", "b", "c")
因为c("a", "b", "c")[c(TRUE, FALSE, TRUE)]
将返回a
和c
。
逻辑向量可以通过逻辑运算自动创建。 主要运营商是
==
等于!=
不等于>
大于<
小于>=
大于或等于<=
小于等于和运算可以与&
(and) 和|
结合使用 (或),并且可以使用!
(例如!3<4
会问三不小于四吗?)。
例如, c(1,2,3,4) >= 3
将产生FALSE FALSE TRUE TRUE
。
假设您在x
中有一个名为 year 的变量,您的解决方案将类似于:
points(x$longitude[x$year>2005 & x$year<=2010],
y$latitude[ x$year>2005 & x$year<=2010)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.