class_docstr: Logs attack results to Visdom.
class_docstr_tok: ["Logs","attack","results","to","Visdom","."]
code: def __init__(self, env="main", port=8097, hostname="localhost"):
      if not port_is_open(port, hostname=hostname):
          raise socket.error(f"Visdom not running on {hostname}:{port}")
      self.vis = visdom.Visdom(port=port, server=hostname, env=env)
      self.env = env
      self.port = port
      self.hostname = hostname
      self.windows = {}
      self.sample_rows = []
  
file_path: TextAttack/textattack/loggers/visdom_logger.py
imports: import socket
  from textattack.shared.utils import LazyLoader, html_table_from_rows
  from .logger import Logger
label_desc: Use image node_id 1 to create a new VisdomLogger object from inherited base classes: Logger with example: obj = VisdomLogger(env, port, hostname)