コード例 #1
0
 def get_data(self, flatten=False):
     """Returns the JSON for the plot with non-data elements stripped."""
     self.to_graph_objs()
     class_name = self.__class__.__name__
     obj_key = NAME_TO_KEY[class_name]
     d = dict()
     for key, val in list(self.items()):
         if isinstance(val, (PlotlyDict, PlotlyList)):
             sub_data = val.get_data(flatten=flatten)
             if flatten:
                 for sub_key, sub_val in sub_data.items():
                     key_string = "{0}.{1}".format(key, sub_key)
                     d[key_string] = sub_val
             else:
                 d[key] = sub_data
         else:
             try:
                 # TODO: Update the JSON
                 if graph_objs_tools.value_is_data(obj_key, key, val):
                     d[key] = val
             except KeyError:
                 pass
     keys = list(d.keys())
     for key in keys:
         if isinstance(d[key], (dict, list)):
             if len(d[key]) == 0:
                 del d[key]
     return d
コード例 #2
0
 def test_unknown_strings(self):
     self.assertFalse(value_is_data("scatter", "blah", ""))
     self.assertFalse(value_is_data("huh?", "text", None))
コード例 #3
0
 def test_style_value_type(self):
     self.assertFalse(value_is_data("marker", "color", "red"))
     self.assertTrue(value_is_data("marker", "color", ["red", "blue"]))
     self.assertTrue(value_is_data("marker", "opacity", (0.9, 0.5)))
     self.assertFalse(value_is_data("marker", "symbol", {}))
コード例 #4
0
 def test_data_value_type(self):
     self.assertTrue(value_is_data("scatter", "x", {}))
     self.assertTrue(value_is_data("bar", "name", "bill"))
     self.assertTrue(value_is_data("histogram", "x", [5, 5]))
     self.assertTrue(value_is_data("xaxis", "range", [0, 5]))
コード例 #5
0
 def test_style_value_type(self):
     self.assertFalse(value_is_data('marker', 'color', 'red'))
     self.assertTrue(value_is_data('marker', 'color', ['red', 'blue']))
     self.assertTrue(value_is_data('marker', 'opacity', (.9, .5)))
     self.assertFalse(value_is_data('marker', 'symbol', {}))
コード例 #6
0
 def test_data_value_type(self):
     self.assertTrue(value_is_data('scatter', 'x', {}))
     self.assertTrue(value_is_data('bar', 'name', 'bill'))
     self.assertTrue(value_is_data('histogram', 'x', [5, 5]))
     self.assertTrue(value_is_data('xaxis', 'range', [0, 5]))
コード例 #7
0
 def test_unknown_strings(self):
     self.assertFalse(value_is_data('scatter', 'blah', ''))
     self.assertFalse(value_is_data('huh?', 'text', None))