【发布时间】:2017-09-11 19:00:25
【问题描述】:
我已经为此花费了几个小时,而且我是一个新用户。我去过很多网站并尝试过不同的东西。我似乎无法让图表在 x 轴上以 YYYY-MM 格式显示日期。日期开始是字符,这似乎适用于日期范围输入。但是图表日期要么显示为长数字,要么显示为 Mar-01、Apr-01 等。我宁愿看到 2017-Feb、2017-Mar、2017-Apr、2017-May。如果他们不能像这样正确排序,我将需要 2017-02、2017-03 等(甚至 201702 - 只是一些年份然后月份格式)。我的应用程序有几个动态 UI,它们正在运行。我展示的是一个简单的版本,但我留下了日期范围选择以防万一。
library(shiny)
library(tidyverse)
library(DT)
library(lubridate)
data_source_end = c("2/28/2017","3/31/2017", "4/30/2017", "5/31/2017")
mean_score = c(1.5, 2.5 , 3.5, -.5)
df <- data.frame(data_source_end, mean_score)
df$data_source_char <- as.character(df$data_source_end)
df$data_source_mdy <- as.Date(mdy(df$data_source_char),"%Y-%m-%d")
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
dateRangeInput("dates","DateRange",
start = min(df$data_source_char),
end = max(df$data_source_char))
),
mainPanel(
plotOutput("plot2")
)
)
)
# Define server logic required to draw a histogram
server <- function(input, output) {
output$DateRange <- renderText({
#i have validate messages here
})
fildata <- reactive({
fildata <- df
filtered2 <- fildata %>%
select(data_source_mdy, mean_score ) %>%
dplyr::arrange(data_source_mdy)
return(filtered2)
})
output$plot2 <- renderPlot({
x <-fildata()$data_source_mdy
y <- fildata()$mean_score
plot(x, y, xlim=c(input$dates[1],input$dates[2] )
)
})
}
# Run the application
shinyApp(ui = ui, server = server)
【问题讨论】: