堆叠的ggplot百分比条形图在闪亮

AK 47

我的目标是在ggplot中创建带有百分比标签的堆叠条形图。经过研究并阅读了一些材料后,我设法管理了所需的图表。有很多材料。

如何在ggplot2中标记堆叠的条形图而不创建摘要数据框?

创建堆叠的条形图,其中每个堆叠的缩放比例总计为100%

R堆叠百分比条形图,带有二进制因子和标签的百分比(带ggplot)

但是,我有两个问题:

1)我找不到合适的放置标签的地方。您会看到标签未居中且位于错误的部分。(图生成时未使用闪亮) 在此处输入图片说明如何解决此问题?

第二个问题是当我尝试在中使用绘图代码时shiny我使用以下功能创建标签:df$label = paste0(sprintf("%.0f", df$percent), "%"),但是插入标签reactive出现错误。在实际情况下,我有更困难的数据生成和子集示例,因此我的数据必须为reactive

我设法取得了最好的结果shiny在此处输入图片说明

另外,我附上了该应用程序的可重现esample。

我的目标是绘制漂亮labelsstacked percent bar chartggplot

library(shiny)
library(shinydashboard)
library(plyr)
library(ggplot2)



# Header -----------------------------------------------------------

header <- dashboardHeader(title= "DashBoard")


# Sidebar --------------------------------------------------------------

sm <- sidebarMenu(

  menuItem(
    text="stacked bar chart",
    tabName="chart",
    icon=icon("eye")
  )  

)

sidebar <- dashboardSidebar(sm)

# Body --------------------------------------------------

body <- dashboardBody(

  # Layout  --------------------------------------------  

  tabItems(


    tabItem(
      tabName="chart",
      fluidPage(

        fluidRow(

          title = "Inputs", status = "warning", width = 2, solidHeader = TRUE, collapsible = TRUE,


          plotOutput("M1"),
          dataTableOutput(outputId="M3")


        )
      )
    )
  )
)

# Setup Shiny app UI components -------------------------------------------

ui <- dashboardPage(header, sidebar, body)

# Setup Shiny app back-end components -------------------------------------

server <- function(input, output) {






  # ----------------------------------------------------------------------------- 
  #reproducable data generation
  Mdata <- reactive({

    set.seed(1992)
    n=8

    Category <- sample(c("Car", "Bus", "Bike"), n, replace = TRUE, prob = NULL)
    Brand <- sample("Brand", n, replace = TRUE, prob = NULL)
    Brand <- paste0(Brand, sample(1:14, n, replace = TRUE, prob = NULL))
    USD <- abs(rnorm(n))*100

    df <- data.frame(Category, Brand, USD)

    # Calculate the percentages
    df = ddply(df, .(Brand), transform, percent = USD/sum(USD) * 100)


    # Format the labels and calculate their positions
    df = ddply(df, .(Brand), transform, pos = (cumsum(USD) - 0.5 * USD))

    #create nice labes
    #df$label = paste0(sprintf("%.0f", df$percent), "%")  

})



output$M1 <- renderPlot({ 

  ggplot(Mdata(), aes(x=reorder(Brand,USD,
                           function(x)+sum(x)),  y=percent, fill=Category))+
    geom_bar(position = "fill", stat='identity',  width = .7)+
    geom_text(aes(label=percent, ymax=100, ymin=0), vjust=0, hjust=2, color = "white",  position=position_fill())+
    coord_flip()+
    scale_y_continuous(labels = percent_format())+
    ylab("")+
    xlab("")

})  



output$M3 <- renderDataTable({
  Mdata()
})  


  # -----------------------------------------------------------------------------


}

# Render Shiny app --------------------------------------------------------

shinyApp(ui, server)
迈克·怀斯

来自paste0命令的错误是因为它是中的最后一行reactive,因此成为返回值。只需添加一条语句return(df)或等效的内容即可解决该问题。

至于标签的位置,代码按设计工作,您必须计算所需的位置geom_text并明确使用这些坐标,这需要您汇总每个品牌段的坐标,以便知道其左右位置并可以计算中心

其他答案可以在这里找到:

如何居中堆叠百分比条形图标签居中

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在堆叠的条形图ggplot2上方组织百分比值

来自分类Dev

在堆叠的条形图(ggplot2)中标记所选百分比值

来自分类Dev

ggplot条形图百分比组

来自分类Dev

ggplot条形图百分比组

来自分类Dev

如何在ggplot2中绘制堆叠的条形图,以显示基于组的百分比?

来自分类Dev

如何在ggplot2中绘制堆叠的条形图,以显示基于组的百分比?

来自分类Dev

用 R ggplot2 中的百分比从头开始分类变量的堆叠条形图

来自分类Dev

如何显示百分比和条形图

来自分类Dev

堆积条形图百分比

来自分类Dev

叠加的堆积百分比条形图

来自分类Dev

试图从百分比绘制堆积条形图

来自分类Dev

ggplot2:如何绘制条形图,条形图表示百分比,并根据百分比值进行着色?

来自分类Dev

使用ggplot在R中创建堆积百分比条形图

来自分类Dev

ggplot2中条形图的计数和百分比如何?[R

来自分类Dev

如何在堆积的条形图ggplot2上组织百分比值

来自分类Dev

堆叠条形图将变量转换为ggplot2 R中不相关变量的基于不存在的百分比

来自分类Dev

如何使用给定的特定数据结构绘制百分比堆叠的条形图

来自分类Dev

在R中作图:如何在时间序列数据中绘制堆叠的条形图以显示百分比构成?

来自分类Dev

如何使用分组条形图创建百分比条形图?

来自分类Dev

R带有ggplot的两个因子变量的百分比的堆积百分比条形图

来自分类Dev

在条形上方的堆叠条形图中添加百分比标签

来自分类Dev

如何按条形计算堆叠条形图中的百分比?

来自分类Dev

如何创建频率堆叠的条形图,但是条形图上的百分比标签和y轴上的频率在R中?

来自分类Dev

如何使用ggplot2绘制二项式可变百分比条形图

来自分类Dev

操纵Y轴限制不起作用(ggplot2条形图百分比)

来自分类Dev

将总观测数(n)放在ggplot中堆积的百分比条形图的顶部

来自分类Dev

二进制列求和成ggplot中堆积的百分比条形图

来自分类Dev

用ggplot获取带有百分比标签的条形图的最有效方法

来自分类Dev

如何在ggplot2中向有序条形图添加频率百分比

Related 相关文章

  1. 1

    如何在堆叠的条形图ggplot2上方组织百分比值

  2. 2

    在堆叠的条形图(ggplot2)中标记所选百分比值

  3. 3

    ggplot条形图百分比组

  4. 4

    ggplot条形图百分比组

  5. 5

    如何在ggplot2中绘制堆叠的条形图,以显示基于组的百分比?

  6. 6

    如何在ggplot2中绘制堆叠的条形图,以显示基于组的百分比?

  7. 7

    用 R ggplot2 中的百分比从头开始分类变量的堆叠条形图

  8. 8

    如何显示百分比和条形图

  9. 9

    堆积条形图百分比

  10. 10

    叠加的堆积百分比条形图

  11. 11

    试图从百分比绘制堆积条形图

  12. 12

    ggplot2:如何绘制条形图,条形图表示百分比,并根据百分比值进行着色?

  13. 13

    使用ggplot在R中创建堆积百分比条形图

  14. 14

    ggplot2中条形图的计数和百分比如何?[R

  15. 15

    如何在堆积的条形图ggplot2上组织百分比值

  16. 16

    堆叠条形图将变量转换为ggplot2 R中不相关变量的基于不存在的百分比

  17. 17

    如何使用给定的特定数据结构绘制百分比堆叠的条形图

  18. 18

    在R中作图:如何在时间序列数据中绘制堆叠的条形图以显示百分比构成?

  19. 19

    如何使用分组条形图创建百分比条形图?

  20. 20

    R带有ggplot的两个因子变量的百分比的堆积百分比条形图

  21. 21

    在条形上方的堆叠条形图中添加百分比标签

  22. 22

    如何按条形计算堆叠条形图中的百分比?

  23. 23

    如何创建频率堆叠的条形图,但是条形图上的百分比标签和y轴上的频率在R中?

  24. 24

    如何使用ggplot2绘制二项式可变百分比条形图

  25. 25

    操纵Y轴限制不起作用(ggplot2条形图百分比)

  26. 26

    将总观测数(n)放在ggplot中堆积的百分比条形图的顶部

  27. 27

    二进制列求和成ggplot中堆积的百分比条形图

  28. 28

    用ggplot获取带有百分比标签的条形图的最有效方法

  29. 29

    如何在ggplot2中向有序条形图添加频率百分比

热门标签

归档