code: def _add_vis_args_str(
      self, stream_info, param_strs: List[str]
  ) -> None:
      default_args = self._default_vis_args.__dict__
      if not stream_info.req.vis_args:
          return
      for k, v in stream_info.req.vis_args.__dict__.items():
          if k in default_args:
              default_v = default_args[k]
              if (v is None and default_v is None) or (v == default_v):
                  continue  # skip param if its value is not changed from default
              param_strs.append(
                  "{}={}".format(k, NotebookMaker._val2str(v))
              )
  
file_path: tensorwatch/tensorwatch/notebook_maker.py
imports: import nbformat
  from nbformat.v4 import new_code_cell, new_markdown_cell, new_notebook
  from nbformat import v3, v4
  import codecs
  from os import linesep, path
  import uuid
  from .None import utils
  import re
  from typing import List
  from .lv_types import VisArgs
label_desc: Use image node_id 5 for calling the NotebookMaker obj's underlying member method code with example usage: obj._add_vis_args_str(stream_info, param_strs) without return types