此外,我还有一些关于 DT , dygraphs 和闪亮的问题。
1.我已经在R中读取了我的csv数据,只需将 dygraphs 作为附加图像运行。但是,如果我希望我的图像在我的鼠标停留在线上时有一些数字,我该怎么办? 已解决
2.此外,我想更改y轴以显示数字而不是指数符号。 已解决
3.我有一个关于使用闪亮来显示我的Excel数据的想法。因此,我使用带有数据表功能的 DT 包。此外,如何在闪亮中结合 DT 和 dygraphs 。我的意思是当我单击数据表并选择一些行或列时,将显示动态折线图。也许有其他有用和方便的包?
4.我在哪里可以学习一些关于闪亮结合 DT 的参考资料。
以下是我的test.csv数据输入到R。
year month company wp wn ep en pa pan npa npan
1 2015 1 Ch 6497985 1 1471586 2 4833118 3 0 0
2 2015 1 SK 350 1 0 0 0 0 0 0
3 2015 2 Ca 0 0 159703 2 36131 5 0 0
4 2015 2 Ch 88289 1 11227345 3 4305786 2 0 0
5 2015 2 Fu 0 0 794601 1 0 0 0 0
6 2015 2 Zu 0 0 70818 1 218310 9 0 0
7 2015 3 Ca 0 0 93577 1 9586 3 0 0
8 2015 3 Ch 0 0 11114302 3 1149480 4 0 0
9 2015 3 Fu 0 0 847562 1 0 0 0 0
10 2015 3 Zu 0 0 229086 2 0 1 0 0
11 2015 4 Ca 0 0 59999 1 9375 3 0 0
12 2015 4 Ch 0 0 9927702 3 16706470 8 0 0
13 2015 4 Fu 0 0 1000049 1 84655 2 0 0
14 2015 4 Zu 0 0 173894 1 74300 2 0 0
另外,这是原始数据
year,month,company,wp,wn,ep,en,pa,pan,npa,npan
2015,1,Ch,6497985,1,1471586,2,4833118,3,0,0
2015,1,SK,350,1,0,0,0,0,0,0
2015,2,Ca,0,0,159703,2,36131,5,0,0
2015,2,Ch,88289,1,11227345,3,4305786,2,0,0
2015,2,Fu,0,0,794601,1,0,0,0,0
2015,2,Zu,0,0,70818,1,218310,9,0,0
2015,3,Ca,0,0,93577,1,9586,3,0,0
2015,3,Ch,0,0,11114302,3,1149480,4,0,0
2015,3,Fu,0,0,847562,1,0,0,0,0
2015,3,Zu,0,0,229086,2,0,1,0,0
2015,4,Ca,0,0,59999,1,9375,3,0,0
2015,4,Ch,0,0,9927702,3,16706470,8,0,0
2015,4,Fu,0,0,1000049,1,84655,2,0,0
2015,4,Zu,0,0,173894,1,74300,2,0,0
我想显示由年和月(xaxis)订购的(test $ ep)图,该图包含所有公司。 已解决 其他用户可能会在将来遇到类似的问题。我在下面发帖。
测试$ year< - as.Date(test $ year)
time_series< - xts(test $ ep,order.by = test $ year)
dygraph(time_series,group = test $ company)
然而,剧情没有显示任何内容。
我的解决方法:
测试$ year< - as.yearmon(测试$ year,“%m%Y)
testre< - dcast(test,year~company,value.var =“ep”)
testre [is.na(testre)]< - 0
test_xts< - xts(testre [, - 1],order.by = testre $ year)
dygraph(test_xts)
非常感谢。
感谢这个平台,所以我可以提出问题并从其他类型的用户那里学到很多东西。
答案 0 :(得分:0)
这可以帮助您入手。假设test
是您的数据框,您应该首先(当您这样做时)从long转换为wide。一旦您的闪亮应用程序正在运行,请在DT
表中选择多行。
library(dygraphs)
library(xts)
library(reshape2)
library(dplyr)
library(zoo)
library(shiny)
ui = fluidPage(
DT::dataTableOutput("x6"),
tags$br(),
tags$br(),
dygraphOutput("dygraph")
)
server = function(input, output) {
output$x6 <- DT::renderDataTable(DT::datatable({
test
}))
output$dygraph <- renderDygraph({
test_select <- test %>% select(year, month, company, ep)
test_select <- test_select[c(input$x6_rows_selected), ]
test_select_wide <- dcast(test_select, year + month ~ company, value.var="ep")
test_select_wide$Date <- as.yearmon(paste(test_select_wide$year, test_select_wide$month, sep = "-"))
test_select_wide$Date <- as.Date(test_select_wide$Date)
test_select_wide$year <- NULL
test_select_wide$month <- NULL
#test_select_wide <- test_select_wide[,c(6,1,2,3,4,5)]
test_select_wide_xts <- xts(test_select_wide[,-ncol(test_select_wide)], order.by=test_select_wide[,ncol(test_select_wide)])
dygraph(test_select_wide_xts)
})
}
shinyApp(ui=ui, server=server)