visualisation: return 0.0 for None measures in json_data (#38913)
This commit is contained in:
parent
5b72a4be6d
commit
5473870dc2
|
@ -137,6 +137,12 @@ class Measure(Base):
|
|||
'expression': str,
|
||||
}
|
||||
|
||||
@property
|
||||
def default_value(self):
|
||||
if self.type in ['integer', 'percent']:
|
||||
return 0
|
||||
return None
|
||||
|
||||
|
||||
class Dimension(Base):
|
||||
__slots__ = ['name', 'label', 'type', 'join', 'value', 'value_label',
|
||||
|
|
|
@ -181,7 +181,7 @@ class Visualization(object):
|
|||
return data
|
||||
|
||||
def default_cell(self):
|
||||
return MeasureCell(measure=self.measure, value=None)
|
||||
return MeasureCell(measure=self.measure, value=self.measure.default_value)
|
||||
|
||||
def table_2d(self):
|
||||
'''Layout data into 2d tables'''
|
||||
|
|
|
@ -192,11 +192,11 @@ def test_none_percent_json_data(schema1, app, admin):
|
|||
assert visu.json_data() == [
|
||||
{
|
||||
'coords': [{'value': u'2017'}, {'value': u'cat\xe92'}],
|
||||
'measures': [{'value': None}]
|
||||
'measures': [{'value': 0}]
|
||||
},
|
||||
{
|
||||
'coords': [{'value': u'2017'}, {'value': u'cat\xe93'}],
|
||||
'measures': [{'value': None}]},
|
||||
'measures': [{'value': 0}]},
|
||||
{
|
||||
'coords': [{'value': u'2017'}, {'value': u'cat\xe91'}],
|
||||
'measures': [{'value': 94.11764705882354}]},
|
||||
|
|
Loading…
Reference in New Issue