R plotly():带有条件内容的hovertemplate

问题描述

我有一个森伯斯特图,因为标签很长,所以我想显示一些hoverinfo。 代码基本上是

fig <- plot_ly(ids=df$KtoID,text= df$label_5,labels = df$label_4,parents = df$parent_ID,values = df$value_2020,type = 'sunburst',maxdepth=2,insidetextorientation="horizontal",branchvalues = 'total',hovertemplate = paste('%{label}','<br>%{value} EUR<extra></extra>','<br>Anteil an %{parent}','%{percentParent: .1%}'),textinfo="text")

对于每个元素,我想在 % 中包含有关父元素份额的信息。 这很好用,如果我使用

hovertemplate = paste('%{label}','%{percentParent: .1%}')

导致 hoverinfo of Element with parent显示“Anteil an [parent] x %”

但是对于根元素,由于没有父元素,我得到以下 hoverinfor for root element "Anteil an null 100,0 %"。

所以对于根元素,我只想显示第一部分,包括标签和值。

到目前为止,我尝试了一个 if else 表达式。

hovertemplate = if (any(is.na(df[,parent]))) {paste('%{label}','<br>%{value} EUR<extra></extra>')} else {paste('%{label}','%{percentParent: .1%}')},

那没用。

另外,我发现了一个类似的话题here,但不知道如何使用它。

有人知道如何修改我需要的hoverinfo吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)