Cygwin 

# open a Cywgin terminal window
Start >> Cygwin >> Cygwin64 Terminal

# start an X server
startxwin &

# Start the GUI
# Must set environment (use export or inline with command):
# DISPLAY=":0.0"  : sets XWindows display for output
# MPLBACKEND="TkAgg" : overrides default agg, which is non-graphical
# must use python3.7 or greater for datetime fromisoformat support
DISPLAY=":0.0" MPLBACKEND="TkAgg" python3.8 cwg_main.py

# For Win32/64 Native

# install Python38 (e.g.)
https://www.python.org/downloads/release/python-3810/
# include pip
# from command prompt window (Start >> Command Prompt)
# install dependencies
python -m pip install serial
python -m pip install pyserial
python -m pip install matplotlib
# installs cycler-0.10.0 kiwisolver-1.3.1 matplotlib-3.4.2 numpy-1.20.3 pillow-8.2.0 pyparsing-2.4.7 python-dateutil-2.8.1 six-1.16.0

# open Command Prompt (DOS/Win Shell)
Start >> Command Prompt

# (developers using serial.tools) import
import serial.tools.list_ports

# to run
[open command prompt]

cd path/to/cwg*.py
"c:\Program Files\Python39\python.exe" cwg_main.py

# TRACE (file, line number etc)
# use inspection tools
import inspect
from inspect import currentframe
# in code:
frame = currentframe()
print("TRACE ",inspect.getframeinfo(frame).lineno)