【问题标题】:R - convert ggplot piechart into plotlyR - 将ggplot饼图转换为plotly
【发布时间】:2020-09-04 08:53:56
【问题描述】:

我无法尝试在 plotly 中创建相同的 ggplot 饼图,因为我需要 plotly 的交互式悬停功能来查看饼图段的详细信息。

由于geom_bar的存在@(我的理解),它似乎将gpplot饼图呈现为条形图。

我有以下代码:

g2 <- ggplot( data = DT, aes( x = 1, y = percentage, fill = as.factor( operationtype ) ) ) +
  geom_bar( width = 1, stat = "identity" ) +
  facet_wrap( ~deviceid, ncol = 1 ) +
  coord_polar(theta = "y", start=0) +
  theme(axis.title.x = element_blank(),
        axis.text.x  = element_blank(),
        axis.ticks.x = element_blank(),
        axis.title.y = element_blank(),
        axis.text.y  = element_blank(),
        axis.ticks.y = element_blank(),) + 
  labs( fill = "status" )
plot2 <- ggplotly(g2)

其中 g2 是 ggplot 饼图:

但是在执行plot2 &lt;- ggplotly(g2)之后,plot2变成了条形图:

如何在plotly中渲染同一张饼图?

【问题讨论】:

标签: r ggplot2 plotly ggplotly


【解决方案1】:

最好使用plot_ly创建pie-chart,如下图:

# Create fake data
  df <- data.frame(
    genre=c("Pop", "HipHop", "Latin", "Jazz"), 
    values = c(33,22,25,20)
  )
    
  plot_ly(data=df,labels=~genre, values=~values, type="pie") %>% 
    layout(title = 'United States Music Genre Prevalent in 1999',
           xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
           yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))

然后使用subplot() 组合多个地块。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多