在 R 中绘制分类变量的每周数据

Plotting Weekly Data of Categorical Variables in R

我有三个变量的每周数据

W   Var Units
1   A   10
2   A   3
2   B   19
3   C   8
3   A   54
3   A   6
4   C   2
4   B   13
6   C   22
6   A   31
7   C   17
7   A   43
7   D   4

`我想以这样的方式绘制它,即在 y 轴上绘制 Var(即具有不同颜色的 A、B、C)应该在 x 轴上绘制周数 (W)。一周 (W) 可能包含两个或三个变量。例如,第三周有 A 和 C。所以周是多值函数,单位表示点的大小。到目前为止我已经使用

ndf <- data.frame(W= 1:max(as.numeric(as.character(df$W))))
merge_df <- merge(df, ndf, all=TRUE) # to note every week number so that zeors can also be plotted
merge_df[is.na(merge_df)] <- 0 # setting Na's to zero

问题是在这些步骤之后,Var 列中产生了一些 NA。如何处理和绘制?

接下来这是一个样本数据,以及如果我有 10 年的周数并且我想将 Var 绘制为 10 年的每周时间序列,如何做到这一点。

我不太确定我理解你的问题,这有帮助吗?

library(dplyr)
library(ggvis)

df %>%
  ggvis(~W, ~Var, fill = ~Var, size = ~Units)  %>%
  layer_points() %>%
  add_legend("size", properties = legend_props(legend = list(y = 100))) %>%
  scale_numeric("x", nice = TRUE)