code: def handle_GET_ttablegraph(self,params):
      
      schedule = self.server.schedule
      marey = MareyGraph()
      trip = schedule.GetTrip(params.get('trip', None))
      route = schedule.GetRoute(trip.route_id)
      height = int(params.get('height', 300))
  
      if not route:
        print('no such route')
        self.send_error(404)
        return
  
      pattern_id_trip_dict = route.GetPatternIdTripDict()
      pattern_id = trip.pattern_id
      if pattern_id not in pattern_id_trip_dict:
        print('no pattern %s found in %s' % (pattern_id, pattern_id_trip_dict.keys()))
        self.send_error(404)
        return
      triplist = pattern_id_trip_dict[pattern_id]
  
      pattern_start_time = min((t.GetStartTime() for t in triplist))
      pattern_end_time = max((t.GetEndTime() for t in triplist))
  
      marey.SetSpan(pattern_start_time,pattern_end_time)
      marey.Draw(triplist[0].GetPattern(), triplist, height)
  
      content = marey.Draw()
  
      self.send_response(200)
      self.send_header('Content-Type', 'image/svg+xml')
      self.send_header('Content-Length', str(len(content)))
      self.end_headers()
      self.wfile.write(content)
docs: Draw a Marey graph in SVG for a pattern (collection of trips in a route
      that visit the same sequence of stops).