如何使用ggplot根据某些列的值连接绘图上的特定点?我使用基本绘图系统解决了这个问题,但我想知道如何使用ggplot完成这项任务。
使用基础绘图系统完成此任务的代码:
#Defining the dataset
states <- letters[1:10]
set.seed(12345)
profit.2010 <- runif(10, 1000, 2000)
profit.2011 <- runif(10, 1000, 2000)
data <- data.frame(states, profit.2010, profit.2011)
#Making a plot using base plotting system
par(mfrow = c(1, 1))
with(data, plot(rep(1, 10), data[, 2], xlim = c(.5, 2.5)))
with(data, points(rep(2, 10), data[, 3]))
segments(rep(1, 10), data[, 2], rep(2, 10), data[, 3])
使用ggplot的代码不完整。我已经绘制了积分。现在如何使用ggplot加入这些点?
library(tidyr)
dat <- tbl_df(data)
dat <- dat %>%
gather(year, profit, -states)
ggplot(dat, aes(year, profit)) + geom_text(aes(label = states))
答案 0 :(得分:0)
如果您想要线条,请添加geom_line
并设置group=
美学,以便知道要连接哪些点。
ggplot(dat, aes(year, profit)) +
geom_text(aes(label = states)) +
geom_line(aes(group = states))