R 变线厚图
有没有一种简单的方法可以在R中绘制变线厚图 我有一个数据集(约50k行),其中每个数据点都有一个关联的大小,我想将其绘制为线条。假设我的数据如下所示:R 变线厚图,r,plot,R,Plot,有没有一种简单的方法可以在R中绘制变线厚图 我有一个数据集(约50k行),其中每个数据点都有一个关联的大小,我想将其绘制为线条。假设我的数据如下所示: library(data.table) data.table(x = 1:5, y = 1:5, thickness = c(1:4, NA)) # x y thickness #1: 1 1 1 #2: 2 2 2 #3: 3 3 3 #4: 4 4 4 #5: 5 5
library(data.table)
data.table(x = 1:5, y = 1:5, thickness = c(1:4, NA))
# x y thickness
#1: 1 1 1
#2: 2 2 2
#3: 3 3 3
#4: 4 4 4
#5: 5 5 NA
我希望实现以下目标:
plot(1:2, 1:2, lwd = 1, type = 'l', xlim = c(1,5), ylim = c(1,5))
lines(2:3, 2:3, lwd = 2)
lines(3:4, 3:4, lwd = 3)
lines(4:5, 4:5, lwd = 4)
我知道我可以在所有点上循环,只做我上面所做的,但我宁愿避免那种解决方案。ggplot2解决方案:
library(data.table)
dt <- data.table(x = 1:5, y = 1:5, thickness = c(1:4, NA))
library(ggplot2)
ggplot(dt, aes(x, y, size=thickness)) + geom_path()
库(data.table)
dt太好了,这很简单:)似乎ggplot
不喜欢最后一个NA
(没什么大不了的,在那里添加任何值都很好。)NA
被解释为不同段之间的界限。我认为这与基本绘图中的行为一致。