我正在尝试使用 R 中的 ggplot 和 Shiny 制作条形图,但我的数据以一种奇怪的方式构建,这似乎使这项任务比预期的更困难。数据框看起来像这样:
Name Percent 1 Percent 2 Percent 3
A 45 10 45
B 30 20 50
C 10 35 55
基本上,我想让我的条形图根据某人的选择将每个百分比显示为“条形”。例如,如果我的 Shiny 应用程序有一个显示“选择名称”的下拉菜单,并且有人选择了 A,则生成的图形应该是三个条形,分别显示 45%、10% 和 45%,分别带有“百分比 1”、“百分比 2” ”和“百分比 3”作为标签。
谢谢你的帮助!
我认为您必须先进行一些数据整理,然后才能对这些数据进行任何可视化。以下是一些可以为您完成这项工作的代码示例:
stack <- data.frame( name = c('A','B','C'),
percent1 = c(45,10,45),
percent2 = c(30,20,50),
percent3 = c(10,35,55),
stringsAsFactors = FALSE)
stack_ <- stack %>% gather(percent, value, percent1:percent3)
stack_ <- stack_ %>% filter(name == 'A')
p<-ggplot(data=stack_, aes(x=percent, y=value)) +
geom_bar(stat="identity")
p
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句