R Shiny Bar Plot并输入$ var问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R Shiny Bar Plot并输入$ var问题相关的知识,希望对你有一定的参考价值。
输入变量类型存在一些阻止R Shiny工作的问题。生成下拉列表,我可以选择变量,但没有生成绘图,我没有收到错误消息。如果我直接使用数据框名称和字段替换ggplot(注释为1),则生成条形图。我尝试了as.character(给我一个错误),没有转换或as.factor(没有给出错误,但没有生成条形图。
library(shiny)
library(ggplot2)
# DEFINE UI FUNCTION #######################################
ui <- fluidPage(
titlePanel("Charting GE Data"),
sidebarLayout(
sidebarPanel(
# Dropdown menu for selecting variable from GE data.
selectInput("var2",
label = "Select X Axis Variable",
choices = c("Indicator_Type" = 12, "Class" = 13),
selected = 13) # Default selection
),
mainPanel(
plotOutput("BarPlot")
)
)
)
# DEFINE SERVER FUNCTION ###################################
server <- function(input, output) {
# Define bar plot output
output$BarPlot <- renderPlot({
iX <- as.factor(input$var2) #
xvar <- Event_identity_noNAsComp[, iX]
require(graphics)
g <- ggplot(Event_identity_noNAsComp, aes(xvar, fill = xvar))
# g <- ggplot(Event_identity_noNAsComp, aes(Event_identity_noNAsComp$Class, #fill = Event_identity_noNAsComp$Class))
g + geom_bar()
})
}
# CALL THE SHINY APP #######################################
shinyApp(ui = ui, server = server)
希望这可以帮助...
iX <- as.numeric(input$var2)
如果没有必要提供列号位置,则在提供列名称时它将起作用:
EG
# Dropdown menu for selecting variable from GE data.
selectInput("var2",
label = "Select X Axis Variable",
choices = c("Mkt Returns" = "mktreturns", "Mkt Prices" = "mktprices"),
selected = "mktreturns")
所以对我来说,我使用了以下数据集:
summary(df_bm)
Date mktreturns mktprices
2013-02-14:1分钟:-2095.500分钟:1890 2013-02-15:1 1st Qu。:-13.000 1st Qu.:2395 2013-02-18:1中位数:0.000中位数:2665 2013-02-19:1平均值:-5.361平均值:2597 2013-02-20:1 3rd Qu。:8.000 3rd Qu.:2842 2013-02-21:1 Max。 :268.000 Max。 :3378 (其他):1007
以上是关于R Shiny Bar Plot并输入$ var问题的主要内容,如果未能解决你的问题,请参考以下文章
R语言ggplot2可视化:可视化条形图(bar plot)并高亮(hightlight)需要突出的条形突出显示Barplot中的条Highlight a Bar in Barplot
R Shiny Plotly 3D:将x,y,z轴的标题更改为实际变量名称并添加图例标题
R语言使用ggpubr包的ggbarplot函数可视化分组条形图(grouped bar plot)并添加误差条(error bar误差条显示平均值+/-sd)不添加填充色添加jitter抖动
R语言ggplot2可视化:将条形图(bar plot)和线图(line plot)组合在一起并使用双Y轴(double y axis)进行可视化其中一个Y轴显示为百分比