Thanks for the reply.

Reloading will be okay (although it's a bit of an annoyance if the
user, like me, has a "flash blocker" application that only loads a
flash applet on a site after specifically clicking on it, and this
will force the user to click on the flash applet every time a value is
updated, but it's a very specific issue that shouldn't occur with the
majority of users).

As for other issues, I'm experiencing long initial loading times, and
some instability with large datasets (I'm planning on loading hundreds
or thousands of data entries, and currently entering 900 entries will
crash my browser when creating the chart. Entering 100 takes a few
seconds).

Paulo Mendes


On May 2, 8:24 am, ChartMan <[email protected]> wrote:
> Hi
>
> You are right one needs to reconstruct the chart and draw in order for the
> changes to take place.
> I agree that this is not as easy as just calling #draw() but I don't think
> that performance-wise this will make any difference.
> Are you seeing any other issues here ?
>
> ChartMan
>
> On Fri, Apr 30, 2010 at 11:36 PM, Paulo Mendes <[email protected]>wrote:
>
>
>
> > Hi all,
> > I've been evaluating if Google Visualization's Motion Chart would
> > fulfill our requirements for a visualization tool in financial
> > analysis.
>
> > I've been having a simple problem however: I'm filling a DataTable
> > through Javascript, creating the MotionChart and drawing it. I want to
> > allow the user to change values for a DataTable row's values,
> > dynamically using JavaScript, and then reflect the value changes in
> > the chart (where a point would move to a different position, based on
> > the new data). I've read that that could be done by simple altering
> > the values in the DataTable (through dataTable.setCell() or
> > dataTable.setValue()) and then simply calling "chart.draw()". However,
> > calling "draw()" does not update with the new values (drawing in the
> > new position). Only recreating the MotionChart object will draw the
> > object in a new position.
>
> > What else is needed to update/refresh the MotionChar without
> > recreating the chart object?
>
> > Some code:
>
> > var googleData = null;
> > var googleChart = null;
> > var googleOptions = {};
> > var userDataTableRowIdx = -1; // will contain the index for the table
> > row to change
>
> > google.load('visualization', '1', {'packages':['motionchart']});
> > google.setOnLoadCallback(initChart);
>
> > function initChart()
> > {
> >    googleData = new google.visualization.DataTable();
> >    googleData.addColumn('string', 'Name);
> >    googleData.addColumn('date', 'Date');
> >    googleData.addColumn('number', 'A');
> >    googleData.addColumn('number', 'B');
> > }
>
> > function fillAndDrawChart()
> > {
> >    // in a cycle, call the function below to add values several
> > times, to populate the DataTable
> >    for(/* ... */)
> >        googleData.addRow([name,new Date (2007,12,31),varA, varB]);
>
> >    // save the table row to be altered with the user input values,
> > into variable "userDataTableRowIdx"
> >    /* ... */
>
> >    // setup the chart, create and draw it
> >    googleOptions['width'] = chartWidth;
> >    googleOptions['height'] = chartHeight;
> >    googleOptions['showSidePanel'] = false;
> >    googleOptions['showChartButtons'] = false;
> >    googleOptions['showXScalePicker'] = false;
> >    googleOptions['showYScalePicker'] = false;
> >    googleOptions['showTrails'] = false;
>
> >    googleChart = new
> > google.visualization.MotionChart(document.getElementById('chart_div'));
> >    googleChart.draw(googleData, googleOptions);
> > }
>
> > /**
> > * Called when the user inputs new values, to update and redraw the
> > chart
> > */
> > function ChartSetCellDetails(newValueA, newValueB)
> > {
> >    googleData.setValue(userDataTableRowIdx, 2, newValueA);
> >    googleData.setValue(userDataTableRowIdx, 3, newValueB);
>
> >    // googleChart = new
> > google.visualization.MotionChart(document.getElementById('chart_div'));
>
> >    googleChart.draw(googleData, googleOptions);
> > }
>
> > Thanks for any help,
> > Paulo Mendes
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Google Visualization API" group.
> > To post to this group, send email to
> > [email protected].
> > To unsubscribe from this group, send email to
> > [email protected]<google-visualization-api%[email protected]>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/google-visualization-api?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Google Visualization API" group.
> To post to this group, send email to 
> [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group 
> athttp://groups.google.com/group/google-visualization-api?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"Google Visualization API" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-visualization-api?hl=en.

Reply via email to