[PIPE2D-293] Make matplotlib imports optional Created: 03/Oct/18  Updated: 03/Oct/18  Resolved: 03/Oct/18

Status: Done
Project: DRP 2-D Pipeline
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Story Priority: Normal
Reporter: price Assignee: price
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Reviewers: cloomis

 Description   

fmadec reports:

[pfs@1cfe7a2b3699 ics_drpActor]$ export TARGET=/drp/lam
[pfs@1cfe7a2b3699 ics_drpActor]$  export RERUN=pfs
[pfs@1cfe7a2b3699 ics_drpActor]$ export batchArgs="--batch-type=none --doraise"
[pfs@1cfe7a2b3699 ics_drpActor]$ constructFiberFlat.py $TARGET --calib $TARGET/CALIB --rerun $RERUN/calib --id visit=9627..9692 $batchArgs
Traceback (most recent call last):
  File "/opt/lsst/software/stack/stack/miniconda3-4.3.21-10a4fa6/Linux64/drp_stella/1d712c3c7fd8146b89ce5b803da2e0ac5ef99ad7/bin/constructFiberFlat.py", line 2, in <module>
    from pfs.drp.stella.constructFiberFlatTask import ConstructFiberFlatTask
  File "/opt/lsst/software/stack/stack/miniconda3-4.3.21-10a4fa6/Linux64/drp_stella/1d712c3c7fd8146b89ce5b803da2e0ac5ef99ad7/python/pfs/drp/stella/__init__.py", line 3, in <module>
    from .spectraContinued import *
  File "/opt/lsst/software/stack/stack/miniconda3-4.3.21-10a4fa6/Linux64/drp_stella/1d712c3c7fd8146b89ce5b803da2e0ac5ef99ad7/python/pfs/drp/stella/spectraContinued.py", line 12, in <module>
    from pfs.datamodel.pfsArm import PfsArm, PfsConfig
  File "/opt/lsst/software/stack/stack/miniconda3-4.3.21-10a4fa6/Linux64/datamodel/264fb7b46bfa4c56f9c31e5b128850ba3f4a4776/python/pfs/datamodel/pfsArm.py", line 13, in <module>
    import matplotlib.pyplot as plt
  File "/software/conda/lib/python3.6/site-packages/matplotlib/pyplot.py", line 31, in <module>
    import matplotlib.colorbar
  File "/software/conda/lib/python3.6/site-packages/matplotlib/colorbar.py", line 36, in <module>
    import matplotlib.contour as contour
  File "/software/conda/lib/python3.6/site-packages/matplotlib/contour.py", line 20, in <module>
    import matplotlib.font_manager as font_manager
  File "/software/conda/lib/python3.6/site-packages/matplotlib/font_manager.py", line 55, in <module>
    from matplotlib import afm, cbook, ft2font, rcParams, get_cachedir
ImportError: /opt/lsst/software/stack/python/miniconda3-4.3.21/lib/python3.6/lib-dynload/../../libz.so.1: version `ZLIB_1.2.9' not found (required by /software/conda/lib/python3.6/site-packages/matplotlib/../../.././libpng16.so.16)

The failure to import matplotlib is not something I can do anything about (it seems to be from mixing conda\ s), but I can make the import matplotlib optional.



 Comments   
Comment by price [ 03/Oct/18 ]

Does this look reasonable, cloomis?

price@neverland:~/pfs/datamodel (tickets/PIPE2D-293=) $ git sub
commit 8b6cb8a5298a946bd8df88d60a7149265800f84f
Author: Paul Price <price@astro.princeton.edu>
Date:   Tue Oct 2 11:52:59 2018 -0400

    pfsArm: make flake8-clean

 python/pfs/datamodel/pfsArm.py | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit b92d4e9fefb9d7181ffa045390702a30daa32b27
Author: Paul Price <price@astro.princeton.edu>
Date:   Tue Oct 2 11:57:01 2018 -0400

    pfsArm: make matplotlib optional
    
    matplotlib is only used for plotting, so there's no need
    to import it for general use.

 python/pfs/datamodel/pfsArm.py | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit a72e26e0ff21303a61d7517f0ffe0b16da87da5e
Author: Paul Price <price@astro.princeton.edu>
Date:   Tue Oct 2 12:03:59 2018 -0400

    pfsObject: make flake8-clean

 python/pfs/datamodel/pfsObject.py | 32 +++++++++++++++++---------------
 1 file changed, 17 insertions(+), 15 deletions(-)

commit 6c9569172a462b6802b26151681c46591bcb0f98
Author: Paul Price <price@astro.princeton.edu>
Date:   Tue Oct 2 12:04:24 2018 -0400

    pfsObject: make matplotlib optional
    
    matplotlib is only used for plotting, so there's no need
    to import it for general use.

 python/pfs/datamodel/pfsObject.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment by price [ 03/Oct/18 ]

Thanks Craig!

Merged to master, along with a few small changes to the Travis scripts that maybe (???) made a difference in getting things to pass.

Generated at Wed Jul 16 17:56:32 JST 2025 using Jira 8.3.4#803005-sha1:1f96e09b3c60279a408a2ae47be3c745f571388b.