将predict()值中的数据添加到R中另一个绘图的末尾

将predict()值中的数据添加到R中另一个绘图的末尾,r,ggplot2,R,Ggplot2,我有一个csv文件,其中包含2010-2019年的人口估计数。我使用了predict()函数来估计2020年至2024年的人口。我如何将这两个图结合到2020年开始的地方,2019年在x轴上结束的地方?功能是最好的选择吗 另外,我将如何更改x记号以显示2020、20212022220232024?目前只显示1,2,3,4,5。我尝试了scale\u x\u discrete功能,但没有成功 library(ggplot2) library(tidyr) library(tidyverse) p

我有一个csv文件,其中包含2010-2019年的人口估计数。我使用了
predict()
函数来估计2020年至2024年的人口。我如何将这两个图结合到2020年开始的地方,2019年在x轴上结束的地方?功能是最好的选择吗

另外,我将如何更改x记号以显示2020、20212022220232024?目前只显示1,2,3,4,5。我尝试了
scale\u x\u discrete
功能,但没有成功

library(ggplot2)
library(tidyr)
library(tidyverse)

pops <- read_csv("nst-est2019-popchg2010_2019.csv")
OK_pops<- filter(pops, NAME == "Oklahoma")
pop_OK <- pivot_longer(OK_pops,
        cols=starts_with("POP"),
        names_to="Year",
        names_prefix = "POPESTIMATE",
        values_to = "Population"
)

options(digits=4)
pop_OK <- transform(pop_OK, Population=as.numeric(Population))
pop_OK <- transform(pop_OK, Year=as.numeric(Year))

str(pop_OK)

ggplot(pop_OK) + geom_point(aes(x=Year, y=Population))
abline(pop_OK)


model <-lm(formula = Population ~ Year, data = pop_OK)
summary(model)
pred <- predict(model, newdata=data.frame(Year=2020:2024))
setNames(pred, 2020:2024)

plot(pred, pch = 16, col = "blue" )
scale_x_discrete(breaks=c("1", "2", "3", "4", "5"),
                  labels=c("2020","2021","2022","2023","2024"))
库(ggplot2)
图书馆(tidyr)
图书馆(tidyverse)

pops您需要使用与此类似的rbind:


新的_数据添加一个可复制的示例数据集将很有帮助,并将阻止人们对您的抱怨:)如果您的预测输出具有相同的列名,您应该能够使用rbind将它们连接在一起。此链接提供了一种绘制不同长度数据的解决方案,如果您将原始数据和输出分开,这可能会有所帮助:)谢谢提示。我将看看如何添加一个可复制的例子,也将检查出链接!非常感谢。