Opened 6 years ago

Closed 6 years ago

#1956 closed defect (fixed)

Interface plot, ValueError: Axis limits cannot be NaN or Inf

Reported by: goddard@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Structure Analysis Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Darwin-18.5.0-x86_64-i386-64bit
ChimeraX Version: 0.9 (2019-05-17)
Description
Squishing an interface plot panel to minimum height gives this divide by zero error in matplotlib, apparently as it is trying to rescale the plot contents.

Log:
UCSF ChimeraX version: 0.9 (2019-05-17)  
© 2016-2019 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open 4hhb format mmCIF fromDatabase pdb

4hhb title:  
The crystal structure of human deoxyhaemoglobin At 1.74 angstroms resolution
[more info...]  
  
Chain information for 4hhb #1  
---  
Chain | Description  
A C | hemoglobin (deoxy) (α chain)  
B D | hemoglobin (deoxy) (β chain)  
  
Non-standard residues in 4hhb #1  
---  
HEM — protoporphyrin IX containing Fe (HEME)  
PO4 — phosphate ion  
  
  

> interfaces selAtoms & ~solvent

4 buried areas: D C 851, B A 827, B C 686, D A 683  
/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/networkx/drawing/nx_pylab.py:611: MatplotlibDeprecationWarning:
isinstance(..., numbers.Number)  
if cb.is_numlike(alpha):  
/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/axes/_base.py:1551: RuntimeWarning: divide by zero
encountered in double_scalars  
Xsize = ysize / data_ratio  
Traceback (most recent call last):  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/backends/backend_qt5.py", line 519, in _draw_idle  
self.draw()  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/backends/backend_agg.py", line 402, in draw  
self.figure.draw(self.renderer)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/artist.py", line 50, in draw_wrapper  
return draw(artist, renderer, *args, **kwargs)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/figure.py", line 1649, in draw  
renderer, self, artists, self.suppressComposite)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/image.py", line 138, in _draw_list_compositing_images  
a.draw(renderer)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/artist.py", line 50, in draw_wrapper  
return draw(artist, renderer, *args, **kwargs)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/axes/_base.py", line 2575, in draw  
self.apply_aspect()  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/axes/_base.py", line 1592, in apply_aspect  
self.set_xbound((x0, x1))  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/axes/_base.py", line 3097, in set_xbound  
self.set_xlim(lower, upper, auto=None)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/axes/_base.py", line 3227, in set_xlim  
left = self._validate_converted_limits(left, self.convert_xunits)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/matplotlib/axes/_base.py", line 3139, in _validate_converted_limits  
raise ValueError("Axis limits cannot be NaN or Inf")  
ValueError: Axis limits cannot be NaN or Inf  




OpenGL version: 4.1 ATI-2.8.38
OpenGL renderer: AMD Radeon Pro 580 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.

Change History (2)

comment:1 by Tom Goddard, 6 years ago

Component: UnassignedStructure Analysis
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionInterface plot, ValueError: Axis limits cannot be NaN or Inf

Fixed.

Forced interface plot to have minimum pixel height 1.

comment:2 by Tom Goddard, 6 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.