Beste allemaal,
Ben me aan het verdiepen in de visualisaties van Google Charts en is eigenlijk ook de eerste keer dat ik met JS bezig ben. Dankzij de zeer uitgebreide handleiding van Google zelf en door uiteraard gebruik van een bepaalde zoekmachine
...
Inmiddels ben ik zover dat ik voorgekouwde JS kan lezen, begrijp wat er staat en dit naar mijn wensen redelijk kan aanpassen. Nu ben ik echter toch wat tegengekomen waarvan ik hoop dat iemand me een handje in de juiste richting kan helpen:
In dit spreadsheet (Testsheet) heb ik in het menu zelf een knop "Dashboard" aangemaakt die naar 3 grafieken verwijst, gebaseerd op data uit de sheet zelf. Dit lukt goed en kan inmiddels ook multipele datasets uit de sheet uitroepen en vertalen naar een Chart.
Ik ben aan het klooien geweest met de Geochart en die lukt inmiddels ook (optie 2). De code die ik daarbij gebruik is:
Echter als ik vervolgens op dezelfde de sheet aanspreek bij het gebruik van de Maps chart ipv geochart, laad hij het script wel, maar ik zie niets.
Waarschijnlijk gaat er toch ergens iets mis met of het formaat van de data in de sheet of de manier waarop de data wordt gevoerd aan de chart (
Ik zou iemand zeer dankbaar zijn voor een setje in de goede richting.
Thanks!
Ben me aan het verdiepen in de visualisaties van Google Charts en is eigenlijk ook de eerste keer dat ik met JS bezig ben. Dankzij de zeer uitgebreide handleiding van Google zelf en door uiteraard gebruik van een bepaalde zoekmachine
Inmiddels ben ik zover dat ik voorgekouwde JS kan lezen, begrijp wat er staat en dit naar mijn wensen redelijk kan aanpassen. Nu ben ik echter toch wat tegengekomen waarvan ik hoop dat iemand me een handje in de juiste richting kan helpen:
In dit spreadsheet (Testsheet) heb ik in het menu zelf een knop "Dashboard" aangemaakt die naar 3 grafieken verwijst, gebaseerd op data uit de sheet zelf. Dit lukt goed en kan inmiddels ook multipele datasets uit de sheet uitroepen en vertalen naar een Chart.
Ik ben aan het klooien geweest met de Geochart en die lukt inmiddels ook (optie 2). De code die ik daarbij gebruik is:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
| <html> <head> <script type='text/javascript' src='https://www.google.com/jsapi'></script> <script type='text/javascript'> google.load('visualization', '1', {'packages': ['geochart']}); google.setOnLoadCallback(drawGID); function drawGID() { var queryString = encodeURIComponent('SELECT E, F, G LIMIT 5'); var query = new google.visualization.Query( 'https://docs.google.com/spreadsheets/d/1jzPF0FF2gP6-z_l0LsfooJP7gY6WOZfH-FoynPNiuu8/gviz/tq?gid=0&headers=1&tq=' + queryString); query.send(handleQueryResponse); } function handleQueryResponse(response) { if (response.isError()) { alert('Error in query: ' + response.getMessage() + ' ' + response.getDetailedMessage()); return; } var data = response.getDataTable(); var options = { region: 'NL', displayMode: 'markers', colorAxis: {colors: ['green', 'blue']} }; var chart = new google.visualization.GeoChart(document.getElementById('chart_div')); chart.draw(data, options); }; </script> </head> <body> <div id="chart_div" style="width: 900px; height: 500px;"></div> </body> </html> |
Echter als ik vervolgens op dezelfde de sheet aanspreek bij het gebruik van de Maps chart ipv geochart, laad hij het script wel, maar ik zie niets.
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| <html> <head> <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script> google.load('visualization', '1', { 'packages': ['map'] }); google.setOnLoadCallback(drawGID); function drawGID() { var queryString = encodeURIComponent('SELECT E, F, G LIMIT 4'); var query = new google.visualization.Query( 'https://docs.google.com/spreadsheets/d/1jzPF0FF2gP6-z_l0LsfooJP7gY6WOZfH-FoynPNiuu8/gviz/tq?gid=0&headers=1&tq=' + queryString); query.send(handleQueryResponse); } function handleQueryResponse(response) { if (response.isError()) { alert('Error in query: ' + response.getMessage() + ' ' + response.getDetailedMessage()); return; } var data = response.getDataTable(); var options = { showTip: true }; var map = new google.visualization.Map(document.getElementById('chart_div')); map.draw(data, options); }; </script> </head> <body> <div id="chart_div"></div> </body> </html> |
Waarschijnlijk gaat er toch ergens iets mis met of het formaat van de data in de sheet of de manier waarop de data wordt gevoerd aan de chart (
Java:
.1
| var data = response.getDataTable(); |
Ik zou iemand zeer dankbaar zijn voor een setje in de goede richting.
Thanks!