簡體   English   中英

如何在 R 中的一個 plot 中制作多條平滑曲線(使用這些數據)?

[英]How to make multiple smooth curves in one plot in R (with these data)?

我是R的初學者。我有下一個數據:5輛車從A行駛到B,總距離為100公里。 這些汽車的速度是在不同的時刻測量的。 在 x 軸上是測量的時刻(以公里為單位),在 y 軸上是當時的速度。

我在 excel 中對我的數據進行了排序,如圖所示: Excelsheet

我嘗試使用 ggplot 對這些數據進行 plot,但我沒有得到任何線條,如果我得到線條,那么它們並不平滑。 我還想在測量位置點並給它們一種顏色。 並在其旁邊放一個 legenda,如圖所示。 在 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()

Output:

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM