2017-03-15 3 views
0

私はドーナツチャートをプロットしているShinyアプリを開発中です。スライスは選択された変数に依存し、時には小さすぎます。そのような場合、ラベルは下の画像のようにチャートの外に表示されます。プロットドーナッツチャートのラベルを非表示にするr

enter image description here

完全チャートですべてのラベル(%記号で値を)隠すだけホバーアクションは詳細を表示できるようにする方法はありますか?

ドーナツグラフのための再現可能なコードは以下の通りです:あなたはパイの要素には内容がありませんが、ホバリング上の情報を示し、次のドーナツプロットを取得するためにtextinfo='none'を設定することができ

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 

答えて

1

enter image description here

1

あなたはtextinfohoverinfo属性を使用してplotly円グラフで示されている内容を制御することができます。

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> seperators、例えば持つ文字列の任意の組み合わせを貼り付けることにより、ホバーに表示されるテキストをカスタマイズすることができますのようにtext = ~manufことを指定して、あなたの問題を解決する1つの方法は、textinfo = "none"hoverinfo = "text"を設定することになります

plot_ly(text = ~paste("Manuf.: ", manuf , "<br> Number: ", count) , values = ~count, textinfo = "none", hoverinfo = "text") %>% 

enter image description here

関連する問題