-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Plotting trainnig curves leads to Matplotlib not responding error #2507
Comments
Hi, Lucas, I checked your command and did not find sth wrong yet. BTW, does it happen because of extremely low value like Looking forward to your reply. |
Hi, thank you for your help! When I use the python tools/analyze_logs.py logfile/20220327_155405.log.json I ended up with: Traceback (most recent call last):
File "tools/analyze_logs.py", line 129, in <module>
main()
File "tools/analyze_logs.py", line 124, in main
log_dicts = load_json_logs(json_logs)
File "tools/analyze_logs.py", line 107, in load_json_logs
log = json.loads(line.strip())
File "/home/lsancere/anaconda3/envs/mmsegmentation2/lib/python3.8/json/__init__.py", line 357, in loads
return _default_decoder.decode(s)
File "/home/lsancere/anaconda3/envs/mmsegmentation2/lib/python3.8/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/home/lsancere/anaconda3/envs/mmsegmentation2/lib/python3.8/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) The json file from the zip file is maybe corrupted? |
There is a problem during extraction or zipping... Maybe you can copy the json file here for me to test it? Thank you |
I think you can save the picture or change backend of matplotlib. Please use the mmsegmentation/tools/analyze_logs.py Line 93 in 5d49918
or use the I think saving the picture is a better way to solve your problem and the backend depends on the os of your platform |
Hi, @lucas-sancere sorry for late reply. I think the command:
is ok because you got print Could you use example like this one to check Best, |
Hi, thank you both for your answers. I tried saving with (mmsegmentation2) lsancere@LucasLabtopBozekLab:~/These/CMMC/Codes/mmsegmentation_local_nocommits$ python tools/analyze_logs.py logs/20230126_110722.log.json --keys loss --legend loss --out ./test.png
plot curve of logs/20230126_110722.log.json, metric is loss
save curve to: ./test.png But then the process run forever without ending and I have to kill it (no image is saved). My matplotib backend is (mmsegmentation2) lsancere@LucasLabtopBozekLab:~/These/CMMC/Codes/mmsegmentation_local_nocommits$ python tools/analyze_logs.py logs/20230118_181102.log.json --keys loss --legend loss --backend QtAgg
plot curve of logs/20230118_181102.log.json, metric is loss I also have the process running and "Matplotlib not responding" as before. I tried with other json logs as well. Thanks! |
Hi @MengzhangLI and @MeowZheng , Thank you for your help, I finally figured out (kind of) what was happening. The problem was linked to my Here is the list of packages that were inside my (mmsegmentation) lsancere@LucasLabtopBozekLab:~$ conda list
# packages in environment at /home/lsancere/anaconda3/envs/mmsegmentation:
#
# Name Version Build Channel
_libgcc_mutex 0.1 conda_forge conda-forge
_openmp_mutex 4.5 2_gnu conda-forge
addict 2.4.0 pypi_0 pypi
blas 1.0 mkl conda-forge
brotlipy 0.7.0 py38h0a891b7_1005 conda-forge
bzip2 1.0.8 h7f98852_4 conda-forge
ca-certificates 2022.12.7 ha878542_0 conda-forge
certifi 2022.12.7 pyhd8ed1ab_0 conda-forge
cffi 1.15.1 py38h4a40e3a_3 conda-forge
charset-normalizer 2.1.1 pyhd8ed1ab_0 conda-forge
click 8.1.3 pypi_0 pypi
colorama 0.4.6 pypi_0 pypi
commonmark 0.9.1 pypi_0 pypi
contourpy 1.0.7 pypi_0 pypi
cryptography 39.0.0 py38h3d167d9_0 conda-forge
cuda 11.6.1 0 nvidia
cuda-cccl 11.6.55 hf6102b2_0 nvidia
cuda-command-line-tools 11.6.2 0 nvidia
cuda-compiler 11.6.2 0 nvidia
cuda-cudart 11.6.55 he381448_0 nvidia
cuda-cudart-dev 11.6.55 h42ad0f4_0 nvidia
cuda-cuobjdump 11.6.124 h2eeebcb_0 nvidia
cuda-cupti 11.6.124 h86345e5_0 nvidia
cuda-cuxxfilt 11.6.124 hecbf4f6_0 nvidia
cuda-driver-dev 11.6.55 0 nvidia
cuda-gdb 12.0.90 0 nvidia
cuda-libraries 11.6.1 0 nvidia
cuda-libraries-dev 11.6.1 0 nvidia
cuda-memcheck 11.8.86 0 nvidia
cuda-nsight 12.0.78 0 nvidia
cuda-nsight-compute 12.0.0 0 nvidia
cuda-nvcc 11.6.124 hbba6d2d_0 nvidia
cuda-nvdisasm 12.0.76 0 nvidia
cuda-nvml-dev 11.6.55 haa9ef22_0 nvidia
cuda-nvprof 12.0.90 0 nvidia
cuda-nvprune 11.6.124 he22ec0a_0 nvidia
cuda-nvrtc 11.6.124 h020bade_0 nvidia
cuda-nvrtc-dev 11.6.124 h249d397_0 nvidia
cuda-nvtx 11.6.124 h0630a44_0 nvidia
cuda-nvvp 12.0.90 0 nvidia
cuda-runtime 11.6.1 0 nvidia
cuda-samples 11.6.101 h8efea70_0 nvidia
cuda-sanitizer-api 12.0.90 0 nvidia
cuda-toolkit 11.6.1 0 nvidia
cuda-tools 11.6.1 0 nvidia
cuda-visual-tools 11.6.1 0 nvidia
ffmpeg 4.3 hf484d3e_0 pytorch
fonttools 4.38.0 pypi_0 pypi
freetype 2.12.1 hca18f0e_1 conda-forge
gds-tools 1.5.0.59 0 nvidia
gmp 6.2.1 h58526e2_0 conda-forge
gnutls 3.6.13 h85f3911_1 conda-forge
idna 3.4 pyhd8ed1ab_0 conda-forge
importlib-metadata 6.0.0 pypi_0 pypi
intel-openmp 2021.4.0 h06a4308_3561
jpeg 9e h166bdaf_2 conda-forge
kiwisolver 1.4.4 pypi_0 pypi
lame 3.100 h166bdaf_1003 conda-forge
lcms2 2.14 hfd0df8a_1 conda-forge
ld_impl_linux-64 2.39 hcc3a1bd_1 conda-forge
lerc 4.0.0 h27087fc_0 conda-forge
libcublas 11.9.2.110 h5e84587_0 nvidia
libcublas-dev 11.9.2.110 h5c901ab_0 nvidia
libcufft 10.7.1.112 hf425ae0_0 nvidia
libcufft-dev 10.7.1.112 ha5ce4c0_0 nvidia
libcufile 1.5.0.59 0 nvidia
libcufile-dev 1.5.0.59 0 nvidia
libcurand 10.3.1.50 0 nvidia
libcurand-dev 10.3.1.50 0 nvidia
libcusolver 11.3.4.124 h33c3c4e_0 nvidia
libcusparse 11.7.2.124 h7538f96_0 nvidia
libcusparse-dev 11.7.2.124 hbbe9722_0 nvidia
libdeflate 1.17 h0b41bf4_0 conda-forge
libffi 3.4.2 h7f98852_5 conda-forge
libgcc-ng 12.2.0 h65d4601_19 conda-forge
libgomp 12.2.0 h65d4601_19 conda-forge
libiconv 1.17 h166bdaf_0 conda-forge
libjpeg-turbo 2.1.4 h166bdaf_0 conda-forge
libnpp 11.6.3.124 hd2722f0_0 nvidia
libnpp-dev 11.6.3.124 h3c42840_0 nvidia
libnsl 2.0.0 h7f98852_0 conda-forge
libnvjpeg 11.6.2.124 hd473ad6_0 nvidia
libnvjpeg-dev 11.6.2.124 hb5906b9_0 nvidia
libpng 1.6.39 h753d276_0 conda-forge
libsqlite 3.40.0 h753d276_0 conda-forge
libstdcxx-ng 12.2.0 h46fd767_19 conda-forge
libtiff 4.5.0 h6adf6a1_2 conda-forge
libuuid 2.32.1 h7f98852_1000 conda-forge
libwebp-base 1.2.4 h166bdaf_0 conda-forge
libxcb 1.13 h7f98852_1004 conda-forge
libzlib 1.2.13 h166bdaf_4 conda-forge
markdown 3.4.1 pypi_0 pypi
matplotlib 3.6.3 pypi_0 pypi
mkl 2021.4.0 h06a4308_640
mkl-service 2.4.0 py38h95df7f1_0 conda-forge
mkl_fft 1.3.1 py38h8666266_1 conda-forge
mkl_random 1.2.2 py38h1abd341_0 conda-forge
mmcls 0.25.0 pypi_0 pypi
mmcv-full 1.7.1 pypi_0 pypi
model-index 0.1.11 pypi_0 pypi
ncurses 6.3 h27087fc_1 conda-forge
nettle 3.6 he412f7d_0 conda-forge
nsight-compute 2022.4.0.15 0 nvidia
numpy 1.23.5 py38h14f4228_0
numpy-base 1.23.5 py38h31eccc5_0
opencv-python 4.7.0.68 pypi_0 pypi
openh264 2.1.1 h780b84a_0 conda-forge
openjpeg 2.5.0 hfec8fc6_2 conda-forge
openmim 0.3.4 pypi_0 pypi
openssl 3.0.7 h0b41bf4_1 conda-forge
ordered-set 4.1.0 pypi_0 pypi
packaging 23.0 pypi_0 pypi
pandas 1.5.2 pypi_0 pypi
pillow 9.4.0 py38hb32c036_0 conda-forge
pip 22.3.1 pyhd8ed1ab_0 conda-forge
prettytable 3.6.0 pypi_0 pypi
pthread-stubs 0.4 h36c2ea0_1001 conda-forge
pycparser 2.21 pyhd8ed1ab_0 conda-forge
pygments 2.14.0 pypi_0 pypi
pyopenssl 23.0.0 pyhd8ed1ab_0 conda-forge
pyparsing 3.0.9 pypi_0 pypi
pyqt5 5.15.7 pypi_0 pypi
pyqt5-qt5 5.15.2 pypi_0 pypi
pyqt5-sip 12.11.0 pypi_0 pypi
pysocks 1.7.1 pyha2e5f31_6 conda-forge
python 3.8.15 h4a9ceb5_0_cpython conda-forge
python-dateutil 2.8.2 pypi_0 pypi
python_abi 3.8 3_cp38 conda-forge
pytorch 1.13.1 py3.8_cuda11.6_cudnn8.3.2_0 pytorch
pytorch-cuda 11.6 h867d48c_1 pytorch
pytorch-mutex 1.0 cuda pytorch
pytz 2022.7.1 pypi_0 pypi
pyyaml 6.0 pypi_0 pypi
readline 8.1.2 h0f457ee_0 conda-forge
requests 2.28.2 pyhd8ed1ab_0 conda-forge
rich 13.1.0 pypi_0 pypi
seaborn 0.12.2 pypi_0 pypi
setuptools 65.6.3 pyhd8ed1ab_0 conda-forge
six 1.16.0 pyh6c4a22f_0 conda-forge
tabulate 0.9.0 pypi_0 pypi
tk 8.6.12 h27826a3_0 conda-forge
torchaudio 0.13.1 py38_cu116 pytorch
torchvision 0.14.1 py38_cu116 pytorch
typing_extensions 4.4.0 pyha770c72_0 conda-forge
urllib3 1.26.14 pyhd8ed1ab_0 conda-forge
wcwidth 0.2.6 pypi_0 pypi
wheel 0.38.4 pyhd8ed1ab_0 conda-forge
xorg-libxau 1.0.9 h7f98852_0 conda-forge
xorg-libxdmcp 1.1.3 h7f98852_0 conda-forge
xz 5.2.6 h166bdaf_0 conda-forge
yapf 0.32.0 pypi_0 pypi
zipp 3.11.0 pypi_0 pypi
zlib 1.2.13 h166bdaf_4 conda-forge
zstd 1.5.2 h6239696_4 conda-forge So, this list contains package versioning and dependencies issues that prevent matplotlib backend to have a normal behavior. As I didn't have any output when running the script, I didn't investigate which packages and versions are responsible for the issue specifically. |
Hi, thanks you for your amazing work and support!
I have an issue while plotting the training curves, the displayed image is black and I have a "Matplotlib not responding" error message.
My
mmsegmentation
conda env should contain all the packages needed (I installed the req and seaborn as asked), here are my seaborn and matplotlib versions:I am using the original code.
I ran
as explained in the documentation.
My json file (from what I want the logs to be plotted) is the following:
And it seems to be a correct json file.
Output in the terminal is only:
The text was updated successfully, but these errors were encountered: