R语言ggiraph包实现两个交互式柱状图联动失败问题求助
问题原因
你设置的data_id关联了crime_per_day字段,同一统计区域2019年和2020年的日均犯罪数并不相同,导致两张图中对应同一区域的柱子没有统一的匹配标识,因此高亮效果无法跨图联动。
解决方法
把geom_col_interactive里的data_id绑定为两张图通用的关联字段statistical_area即可,ggiraph会自动识别所有相同data_id的交互元素,实现悬停时同步高亮。
修改后的完整代码
# 2019年柱状图 plot_2019<-crimeperday %>% filter(year=="x2019") %>% ggplot(aes(x=reorder(statistical_area,crime_per_day),y=crime_per_day))+ # data_id改为statistical_area,tooltip优化为显示区域+数值 geom_col_interactive(aes(tooltip = paste0(statistical_area, ": ", crime_per_day), data_id = statistical_area))+ coord_flip() # 2020年柱状图 plot_2020<-crimeperday %>% filter(year=="x2020") %>% ggplot(aes(x=reorder(statistical_area,crime_per_day),y=crime_per_day))+ geom_col_interactive(aes(tooltip = paste0(statistical_area, ": ", crime_per_day), data_id = statistical_area))+ coord_flip() # 渲染交互式图表 girafe(code=print(plot_2019+plot_2020))
内容的提问来源于stack exchange,提问作者Fern
相关产品推荐
相关产品推荐

