code: def render(
      explanation,
      id_str=None,
      default_key=-1,
      detected_envs=None,
      js_url=None,
  ):
      from IPython.display import display, HTML
  
      if isinstance(explanation, list):
          msg = "Dashboard not yet supported in cloud environments."
          viz_obj = _build_viz_err_obj(msg)
      else:
          viz_obj = _build_viz_obj(explanation, detected_envs)
  
      init_js, body_js = _build_javascript(
          viz_obj, id_str, default_key=default_key, js_url=js_url
      )
  
      if "databricks" in detected_envs:
          _render_databricks(init_js + body_js)
      elif (
          "colab" in detected_envs
          or "azureml" in detected_envs
          or "azuresynapse" in detected_envs
      ):
          display(HTML(init_js + body_js))
      elif "streamlit" in detected_envs:
          import streamlit.components.v1 as components
  
          components.html(
              HTML(init_js + body_js).data,
              height=1000,
              width=1000,
              scrolling=True,
          )
      else:  # Fallthrough assumes we are in an IPython environment at a minimum.
          if not _current_module.jupyter_initialized:
              _current_module.jupyter_initialized = True
              display(HTML(init_js + body_js))
          else:
              display(HTML(body_js))
  
file_path: interpret/python/interpret-core/interpret/visual/_inline.py
imports: import os
  import time
  import uuid
  from plotly.io import to_json
  from plotly import graph_objs
  import sys
  import json
  import base64
  import logging
label_desc: Use image node_id 9 for calling a global function with example usage: render(explanation, id_str, default_key, detected_envs, js_url) without return types