我目前正在尝试使用我的数据创建图表。我的信息包含一个CSV,其中包含多行,格式如下:日期;时间; hasconnection 。
日期 - 发生日期。
时间 - 发生的时间(早上,下午,晚上)。
hasconnection - 有互联网连接吗? (0 - 假,1 - 真)。
我的想法是创建一个包含所有这些信息的图表。例如,Y轴将包含时间类别(上午,下午,夜晚),X轴将包含日期。该图表将表示成功Internet连接(1)和无Internet连接(0)的数量(计数)。
CSV中的数据示例:
defaultGrailsDoubleConverter
所需图表示例:
使用 ggplot ,我可以创建Y轴(上午,下午,...)和X轴(日期..)。我只是不知道如何将连接计数数据放入图表中。
非常感谢。
答案 0 :(得分:1)
您可以geom_label()
使用hjust
美学以及fill
美学。我生成了一些示例数据来演示:
set.seed(123)
library(dplyr)
library(ggplot2)
df <- data.frame(X = sample(letters[1:3], 100, replace = T), #like date
Y = sample(c('morn','day','night'), 100, replace = T),
Z = rbinom(100,1,prob = .6))
df2 <- df %>% group_by(X, Y, Z) %>% summarise(Counts = n())
ggplot(df2, aes(x = X, y= Y))+
geom_label(aes(label = Counts, fill = factor(Z), hjust = Z)) + theme_bw()+
scale_fill_manual(values = c('0' = 'red','1' = 'green'), name = 'Indicator')
然后只是玩弄你想要的任何情节选项。