code: def setUp(self):
      self.table1 = (("a", 1, 4), ("b", 3, 7), ("c", 2, 2))
  
      self.table2 = (("a", 0, 3), ("b", 2, 3), ("c", 5, 3))
  
      self.table3 = (("a", 1, 10), ("b", 2, 1), ("c", 3, None))
  
      self.text_type = Text()
      self.number_type = Number()
  
      self.column_names = ["one", "two", "three"]
      self.column_types = [
          self.text_type,
          self.number_type,
          self.number_type,
      ]
  
      self.tables = OrderedDict(
          [
              (
                  "table1",
                  Table(
                      self.table1, self.column_names, self.column_types
                  ),
              ),
              (
                  "table2",
                  Table(
                      self.table2, self.column_names, self.column_types
                  ),
              ),
              (
                  "table3",
                  Table(
                      self.table3, self.column_names, self.column_types
                  ),
              ),
          ]
      )
  
      self.tablesets = TableSet(
          self.tables.values(), self.tables.keys()
      )
  
file_path: agate/tests/test_tableset/test_charting.py
imports: from collections import OrderedDict
  import leather
  from agate import Table, TableSet
  from agate.data_types import Number, Text
label_desc: Use image node_id 1 for calling the TestTableSetCharts obj's underlying member method code with example usage: obj.setUp() without return types