code: def table(client, data, name, index=None, limit=None):
      """Create a Perspective `Table` by posting a message to a Perspective
      server implementation through `client`, returning a `PerspectiveTableProxy`
      object whose API is entirely async and must be called with `await` or
      in a `yield`-based generator."""
      options = {}
  
      if index:
          options["index"] = index
      elif limit:
          options["limit"] = limit
  
      msg = {
          "cmd": "table",
          "name": name,
          "args": [data],
          "options": options,
      }
  
      future = asyncio.Future()
      client.post(msg, future)
      return future
  
imports: import asyncio
  from functools import partial
  from .dispatch import async_queue, subscribe, unsubscribe
  from .view_api import view
label_desc: Use image node_id 1 for calling a global function with example usage: table(client, data, name, index, limit) and returns: future