我正在尝试在R中使用plot_ly()
来显示条形图。所使用的数据框如下:
stressStatus = data.frame(
WorkLoad = c("Good","Better","Best","Worst","Okay"),
Percentage = c(29,43,21,7,2)
)
用于可视化条形图的代码如下:
plot_ly(stressStatus, x = stressStatus$WorkLoad, y=stressStatus$Percentage, type = 'bar',
color = stressStatus$WorkLoad,colors=stressStatusColor,
text = paste(round(stressStatus$Percentage),"%"),
hoverinfo = 'text',
hovertext = paste('% of ', stressStatus$WorkLoad,'weeks: ',round(stressStatus$Percentage),"%")) %>%
layout(yaxis = stressStatus$Percentage,showlegend = FALSE)%>%
layout(yaxis = list(ticksuffix = "%"),hoverlabel = list(bgcolor= 'white')) %>%
add_text(text = paste(round(stressStatus$Percentage),'%'),
textposition = 'inside',
marker = NULL)
每种压力状态的颜色如下:
stressStatusColor <- c('#8ace7e', "#b60a1c", "#309143", "#98908c",
"#ff684c")
stressStatusColor <- setNames(stressStatusColor,
c("Good","Better","Best","Worst","Okay"))
我需要在栏中显示文本。对于状态好的,由于标签仅占2%,因此可以显示在条上方。
我通过在textposition = 'auto'
内分配add_text()
来进行尝试。但是我没有得到预期的结果。
有人可以为此问题提供合适的解决方案吗?
提前谢谢!