下面的代码生成我想要的图表.除了我想在工具提示中添加值l.目前我不知道该怎么做.
require(googleVis)
df <- data.frame(x = c(1:5), y = c(10, 20 , 30, 40, 50),
l = c("A", "B", "C", "D", "E"))
plot(gvisLineChart(df, xvar = "x", yvar = "y"))
Run Code Online (Sandbox Code Playgroud) 基本上,我在一个Shiny应用程序中有一个来自googleVis包的gvisCalendar图表,我想在图表下方显示与所选框对应的dataTable.
我可以通过将gvis.listener.jscode参数设置为包含javascript代码字符串的变量来添加事件侦听器.例如,使用此代码,我可以提取所选日历日期的维基百科页面:
output$dates_plot <- renderGvis({
gvisCalendar(calendar.ddply,
options = list(
colorAxis = "{
minValue: 0,
colors: ['E9967A', 'A52A2A']
}",
gvis.listener.jscode = jscode2 )
)
})
jscode2<- "window.open('http://en.wikipedia.org/wiki/'
+ data.getValue(chart.getSelection()[0].row,0)); "
Run Code Online (Sandbox Code Playgroud)
使用此代码,我运行了我的程序,选择了"2015年6月16日"框,我的浏览器上显示了一个新标签:https://en.wikipedia.org/wiki/Tue_Jun_16_2015_00 : 00 : 00_GMT- 0400_(EDT)
我实际上并不想对维基百科做任何事情,我只是以此为例.
我想要做的就是将所选日历框的日期保存为R对象,以便我可以显示与该日期对应的数据的数据表.
我几乎没有使用javascript的经验.谢谢!
阐明绘制树状图时如何计算颜色会很棒(我使用gvisTreeMapRgoogleVis库中的函数)。
minColorValue到的比例重新计算颜色值”是什么意思maxColorValue?通常我使用树状图来显示销售额(大小)和销售额差异(颜色)。所以理想情况下,我想为矩形着色,以便我可以区分正增长和负增长,据我所知,目前这是不可能的。我正在尝试创建一个带有Sankey情节的R闪亮仪表板.我希望能够提取被点击的节点的名称.
有2个库可以绘制Sankey图表,networkD3和googleVis.networkD3允许您监视单击事件,即使在同一个库中实现的其他类型的绘图带有此类功能(forceNetwork()).
googleVis但是gvisSankey,package有一个可以创建sankey图的函数,作为一个选项,你可以传递一个gvis.listener.jscode应该能够捕获它的参数.
我担心我不熟悉JS而且我很难得到我正在寻找的东西.这是我设法得到的:
library(shiny)
library(googleVis)
datSK <- data.frame(From=c(rep("A",3), rep("B", 3)),
To=c(rep(c("X", "Y", "Z"),2)),
Weight=c(5,7,6,2,9,4))
SERVER <- function(input, output, session){
sankey_click <- sprintf("var text = chart.getSelection();
Shiny.onInputChange('%s', text.toString())", session$ns('text'))
output$sankey <- renderGvis(
gvisSankey(datSK, from="From", to="To", weight="Weight",
options=list(gvis.listener.jscode = sankey_click,
sankey = "{node: {interactivity: true, width: 50}}"))
)
click_event <- reactive({input$text})
output$click <- renderText(click_event())
}
UI <- fluidPage(
fluidRow(column(12, htmlOutput("sankey"))),
fluidRow(column(12, verbatimTextOutput("click")))
)
shinyApp(ui = UI, server = …Run Code Online (Sandbox Code Playgroud) 这些是我的UI和服务器的代码.我面临的问题是,当应用程序在本地运行时,不会生成图表.
ui.R
library(googleVis)
library(shiny)
shinyUI(fluidPage(
titlePanel(" Tool"),
sidebarLayout(
sidebarPanel(
radioButtons(inputId="choice", label="What would you like to see?",
choices=c("Overall ","Individual"))
),
mainPanel(
htmlOutput("View")
)
)
))
Run Code Online (Sandbox Code Playgroud)
server.R
library(googleVis)
require(googleVis)
shinyServer(function(input, output) {
n = 100
dates = seq(Sys.Date(), by = 'day', length = n)
x = 10 * rnorm(n)
y = 3 * x + 1 + rnorm(n)
label = rep(LETTERS[1:4], each=25)
label[1] = "D"
my.data = data.frame(Date = dates, x, y, label)
output$view <- renderGvis({
gvisMotionChart(my.data, idvar ='label', xvar = 'x', …Run Code Online (Sandbox Code Playgroud) 在今天之前,所有这些代码工作正常:
var slider;
var ajdi = '';
function drawVisualization() {
var cssClassNames = {
'headerRow': 'zaglavlje',
'tableRow': 'red',
'oddTableRow': 'red1',
'selectedTableRow': 'orange-background large-font',
'hoverTableRow': 'prekoreda',
'headerCell': 'gold-border',
'tableCell': 'cell',
'rowNumberCell': 'underline-blue-font'
};
var json = $.ajax({
url: 'getzadaci.php', // make this url point to the data file
dataType: 'json',
async: false
}).responseText;
// Create our data table out of JSON data loaded from server.
var data = new google.visualization.DataTable(json);
//dodajemo kolonu sa kontrolama
//dodajemo kolonu sa kontrolama
data.addColumn('string', '');
for …Run Code Online (Sandbox Code Playgroud)