[英]Hide labels in plotly donut chart r
我正在制作一個Shiny應用程序,我正在繪制一個圓環圖。 切片取決於所選的變量,有時太小。 在這種情況下,標簽會顯示在圖表外部,如下圖所示。
有沒有辦法在圖表中隱藏所有標簽(帶有%符號的值),只允許懸停操作顯示詳細信息?
圓環圖的可重現代碼如下:
library(plotly)
library(tidyr)
library(dplyr)
# Get Manufacturer
mtcars$manuf <- sapply(strsplit(rownames(mtcars), " "), "[[", 1)
p <- mtcars %>%
group_by(manuf) %>%
summarize(count = n()) %>%
plot_ly(labels = ~manuf, values = ~count) %>%
add_pie(hole = 0.6) %>%
layout(title = "Donut charts using Plotly", showlegend = F,
xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
p
您可以設置textinfo='none'
以獲取以下圓環圖,其中餅圖元素中沒有文本但顯示有關懸停的信息。
您可以使用textinfo
和hoverinfo
屬性控制繪制餅圖中顯示的textinfo
。 解決問題的一個方法是設置textinfo = "none"
和hoverinfo = "text"
同時指定text = ~manuf
如下所示:
library(plotly)
library(tidyr)
library(dplyr)
# Get Manufacturer
mtcars$manuf <- sapply(strsplit(rownames(mtcars), " "), "[[", 1)
p <- mtcars %>%
group_by(manuf) %>%
summarize(count = n()) %>%
plot_ly(text = ~manuf, values = ~count, textinfo = "none", hoverinfo = "text") %>%
add_pie(hole = 0.6) %>%
layout(title = "Donut charts using Plotly", showlegend = F,
xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
p
您可以通過使用<br>
分隔符粘貼任何字符串組合來進一步自定義懸停時顯示的文本,例如:
plot_ly(text = ~paste("Manuf.: ", manuf , "<br> Number: ", count) , values = ~count, textinfo = "none", hoverinfo = "text") %>%
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.