google / google-visualization-issues

288 stars 35 forks source link

Bug: PieChart does not complain about non-number value columns #1335

Open orwant opened 9 years ago

orwant commented 9 years ago
What steps will reproduce the problem? Please provide a link to a
demonstration page if at all possible, or attach code.

Hello, I'm trying to make a piechart and send json data I get the following error,
but only when the number of records exceeds 68:

Error: Problem parsing d="MNaN,NaNLNaN,NaNA77,61.6,0,0,1,NaN,NaNLNaN,NaNA0,0,0,0,0,NaN,NaN"

can give me a solution?

Thank you very much. A greeting

JSON sent:

{ 'cols':[ { 'id':'entidad', 'label':'Entidad', 'type':'string' }, { 'id':'dispositivo',
'label':'Dispositivo', 'type':'string' }, { 'id':'tipoDispositivo', 'label':'Tipo Dispositivo',
'type':'string' } ], 'rows':[ { 'c':[ { 'v':'BANAMEX' }, { 'v':'10' }, { 'v':'ATM'
} ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'20' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'50' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'4520' }, { 'v':'ATM'
} ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'4640' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'5660' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'6030' }, {
'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'6350' }, { 'v':'ATM' } ] }, { 'c':[
{ 'v':'BANAMEX' }, { 'v':'6490' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, {
'v':'6500' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'6960' }, { 'v':'ATM'
} ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'7080' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'7240' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'7380' }, {
'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'7590' }, { 'v':'ATM' } ] }, { 'c':[
{ 'v':'BANAMEX' }, { 'v':'7690' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, {
'v':'7870' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'7890' }, { 'v':'ATM'
} ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'8040' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'8320' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'8930' }, {
'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'9750' }, { 'v':'ATM' } ] }, { 'c':[
{ 'v':'BANAMEX' }, { 'v':'9830' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, {
'v':'9920' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'9990' }, { 'v':'ATM'
} ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'10070' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'10080' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'13020' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'13460' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'13830' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'13850' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'14740' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'15940' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'18370' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'19740' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'19880' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'20160' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'20240' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'20620' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'20630' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'21010' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'21100' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'21270' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'22810' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'25790' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'27630' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'27890' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'27960' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'28900' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'29310' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'31560' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'31930' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'32270' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'32280' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'32300' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'32950' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'33010' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'33060' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'33200' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'34500' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'34950' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'35000' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'35030' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'35050' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'35160' }, { 'v':'ATM' } ] }, {
'c':[ { 'v':'BANAMEX' }, { 'v':'35490' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX'
}, { 'v':'35670' }, { 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'36340' },
{ 'v':'ATM' } ] }, { 'c':[ { 'v':'BANAMEX' }, { 'v':'37370' }, { 'v':'ATM' } ] } ]
} 

What component is this issue related to (PieChart, LineChart, DataTable,
Query, etc)?
PieChart, DataTable, Json

Are you using the test environment (version 1.1)?
(If you are not sure, answer NO)
YES

What operating system and browser are you using?
Ubuntu
Chrome and Firefox

*********************************************************
For developers viewing this issue: please click the 'star' icon to be
notified of future changes, and to let us know how many of you are
interested in seeing it resolved.
*********************************************************

Original issue reported on code.google.com by rcristobalmarques on 2013-10-18 12:12:41

orwant commented 9 years ago
Hi, the problem that you're seeing is because the data for your pie chart is not numeric.
 You are giving a string type for your value, which it's unable to process. The bug
here is that it doesn't tell you that you can't use a string type. I was able to get
it to work by changing the type of your second column to 'number'. Here is the DataTable
that I used:
{
    'cols': [
      {'id': 'entidad', 'label': 'Entidad', 'type': 'string'},
      {'id': 'dispositivo', 'label': 'Dispositivo', 'type': 'number'},
      {'id': 'tipoDispositivo', 'label': 'Tipo Dispositivo', 'type': 'string'}
    ],
    'rows': [
      {'c': [{'v': 'BANAMEX'}, {'v': 10   }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 20   }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 50   }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 4520 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 4640 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 5660 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 6030 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 6350 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 6490 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 6500 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 6960 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 7080 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 7240 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 7380 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 7590 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 7690 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 7870 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 7890 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 8040 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 8320 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 8930 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 9750 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 9830 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 9920 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 9990 }, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 10070}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 10080}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 13020}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 13460}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 13830}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 13850}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 14740}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 15940}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 18370}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 19740}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 19880}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 20160}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 20240}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 20620}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 20630}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 21010}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 21100}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 21270}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 22810}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 25790}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 27630}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 27890}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 27960}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 28900}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 29310}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 31560}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 31930}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 32270}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 32280}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 32300}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 32950}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 33010}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 33060}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 33200}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 34500}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 34950}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 35000}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 35030}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 35050}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 35160}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 35490}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 35670}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 36340}, {'v': 'ATM'}]},
      {'c': [{'v': 'BANAMEX'}, {'v': 37370}, {'v': 'ATM'}]}]}

Original issue reported on code.google.com by grabks@google.com on 2013-10-18 14:26:05

orwant commented 9 years ago
I've also noticed that other types of charts have no problems with data values that
are specified as type=number in the cols array, but are surrounded by quotes in the
rows array. {'v': '123'}

Original issue reported on code.google.com by gstroup on 2014-02-05 23:49:09