選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

50 行
983B

  1. source(here::here("R/03_base2.R"))
  2. step2 <- initial_dfs %>%
  3. filter(.id == "x" | (.id == "y" & .y == -1)) %>%
  4. mutate(
  5. frame = 2,
  6. .x = ifelse(.id == "y", .x - 4, .x),
  7. .x = .x + 2
  8. )
  9. step3 <- step2 %>%
  10. filter(.y != -1) %>%
  11. ungroup() %>%
  12. mutate(frame = 3, .y = .y+1)
  13. sd_df <- setdiff(x,y)
  14. step4 <-
  15. bind_rows(
  16. proc_data2(sd_df, "x"),
  17. proc_data2(sd_df, "y")
  18. ) %>%
  19. filter(.id == "x") %>%
  20. mutate(frame = 4, .x = .x + 2)
  21. sd <-
  22. initial_dfs %>%
  23. bind_rows(step2, step3, step4) %>%
  24. arrange(desc(frame)) %>%
  25. filter(label != "id") %>%
  26. mutate(alpha = case_when(
  27. frame == 2 & .y == -1 ~ 0.25,
  28. TRUE ~ 1
  29. )) %>%
  30. {
  31. plot_data(., "setdiff(x, y)") +
  32. aes(alpha = alpha) +
  33. scale_alpha_identity()
  34. } %>%
  35. animate_plot()
  36. sd <- animate(sd)
  37. anim_save(here::here("images", "setdiff.gif"), sd)
  38. sd_g <- setdiff(x, y) %>%
  39. proc_data2() %>% filter(label != "id") %>%
  40. plot_data("setdiff(x, y)")
  41. save_static_plot(sd_g, "setdiff")