我是 R 初学者。我有以下数据: 5辆车从A地行驶到B地,总里程为100公里。这些汽车的速度是在不同时刻测量的。 x 轴表示测量时刻(以公里为单位),y 轴表示该时刻的速度。
我在 Excel 中对数据进行了排序,如图所示:Excelsheet。
我尝试用 ggplot 绘制这些数据,但我没有得到任何线条,如果我得到线条,那么它们并不平滑。我还想要测量位置的点并给它们一个颜色。然后在它旁边放一个传奇,就像图片上一样。在 Excel 上这很容易,但作为 R 初学者,这很困难。我已经尝试过不同的方法。
有人可以帮助我吗?
大部分工作都是在数据修改中。绘图本身很简单。
# Data munging
tribble(~"Km1",~"Speed1",~"Km2",~"Speed2",~"Km3",~"Speed3",
10,32,8,64,5,34,
20,63,15,34,15,23,
30,45,26,46,25,55,
40,45,37,75,35,64,
50,1,50,2,50,3) %>%
tidyr::pivot_longer(cols = everything(),names_to = "Name",values_to = "Values") %>%
dplyr::mutate(Car = str_extract(Name,"\\d") %>% str_c("Car ",.),
Name = str_replace(Name,"\\d","")) %>%
dplyr::group_by(Car,Name) %>%
dplyr::mutate(Values = str_c(Values,collapse = ",")) %>%
dplyr::slice(1) %>%
dplyr::ungroup() %>%
tidyr::pivot_wider(id_cols = Car,names_from = Name,values_from = Values) %>%
tidyr::separate_rows(Km, Speed) %>%
dplyr::mutate(Km = as.numeric(Km),
Speed = as.numeric(Speed))
# Data plotting
ggplot(aes(Km,Speed,color = Car)) +
geom_point() +
stat_smooth()
输出:
如果我运行你的代码,我会收到一条错误消息:
dplyr::mutate()
中的错误:
ℹ 在争论中:Car = str_extract(Name, "\\d") %>% str_c("Car ", .)
。
由str_c()
中的错误引起:
!找不到函数“str_c”
运行 rlang::last_trace()
查看错误发生的位置。
有什么线索吗? 我正在使用 R 4.3.3
最诚挚的问候,克里斯