首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R绘图:当只有一个堆叠的条形图时,不显示自定义悬停文本

R绘图:当只有一个堆叠的条形图时,不显示自定义悬停文本
EN

Stack Overflow用户
提问于 2016-11-29 01:44:56
回答 1查看 1.2K关注 0票数 3

我一直在使用自定义悬停文本(https://plot.ly/r/text-and-annotations/)上的示例来更改我正在处理的条形图中的悬停文本。如果我的条形图只包含一个堆叠的条形图,则不会显示新的悬停文本。示例(在缺少hoverinfo的最后一张图中):

代码语言:javascript
复制
library(plotly)
year <- c(2015,2015,2016,2016)
type <- c('A','B','A','B')
perc <- c(10,90,20,80)

data <- data.frame(year,type,perc)

# Plot all the data ... default hoverinfo shown
plot_ly(data,x=~year,y=~perc,color=~type) %>% 
  add_bars()%>% 
  layout(barmode = "stack")

# Plot all the data ... custom hoverinfo shown
plot_ly(data,x=~year,y=~perc,color=~type,
  text = ~paste('Type',type,': ',perc,'%'),hoverinfo = 'text') %>% 
  add_bars()%>% 
  layout(barmode = "stack")

# Plot part of the data ... default hoverinfo shown
plot_ly(data[data$year == 2015,],x=~year,y=~perc,color=~type) %>% 
  add_bars()%>% 
  layout(barmode = "stack")

# Plot part of the data ... custom hoverinfo does not appear!
plot_ly(data[data$year == 2015,],x=~year,y=~perc,color=~type,
  text = ~paste('Type',type,': ',perc,'%'),hoverinfo = 'text') %>% 
  add_bars()%>% 
  layout(barmode = "stack")

使用R版本3.3.2和plotly版本4.5.6。

EN

回答 1

Stack Overflow用户

发布于 2016-11-29 20:48:04

得到了一些帮助,解决方案是将文本定义为列表。

代码语言:javascript
复制
plot_ly(data[data$year == 2015,],x=~year,y=~perc,color=~type,
  text = ~list(paste('Type',type,': ',perc,'%')),hoverinfo = 'text') %>% 
  add_bars()%>% 
  layout(barmode = "stack")

只要我知道只有一个条形,并且~类型的顺序在整个数据集中都是相同的,那么这个方法就可以工作。如果我将类型更改为

代码语言:javascript
复制
type <- c('A','B','B','A')

然后运行

代码语言:javascript
复制
data <- data.frame(year,type,perc)
plot_ly(data[data$year == 2016,],x=~year,y=~perc,color=~type,
      text = ~list(paste(year,'Type',type,': ',perc,'%')),hoverinfo = 'text') %>% 
  add_bars()%>% 
  layout(barmode = "stack") 

我没有得到正确的hoverinfo顺序。所以这不是一个完美的解决方案。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40850415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档