Skip to content
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

AttributeError: 'YAxis' object has no attribute '_gridOnMajor' #51

Closed
alexlenail opened this issue Aug 17, 2021 · 2 comments
Closed

AttributeError: 'YAxis' object has no attribute '_gridOnMajor' #51

alexlenail opened this issue Aug 17, 2021 · 2 comments

Comments

@alexlenail
Copy link

alexlenail commented Aug 17, 2021

Just installed this package which seems quite useful! Unfortunately, following along with the docs, the basic example doesn't work:

frame = XAxis() + BED("./raw/ENCODE/dhs/downloads/ENCFF003CAJ.bed") + TrackHeight(8)

frame.plot("chr9:4700000-4900000")
AttributeError: 'YAxis' object has no attribute '_gridOnMajor'
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
/usr/local/lib/python3.7/site-packages/IPython/core/formatters.py in __call__(self, obj)
    339                 pass
    340             else:
--> 341                 return printer(obj)
    342             # Finally look for special method names
    343             method = get_real_method(obj, self.print_method)

/usr/local/lib/python3.7/site-packages/IPython/core/pylabtools.py in <lambda>(fig)
    242 
    243     if 'png' in formats:
--> 244         png_formatter.for_type(Figure, lambda fig: print_figure(fig, 'png', **kwargs))
    245     if 'retina' in formats or 'png2x' in formats:
    246         png_formatter.for_type(Figure, lambda fig: retina_figure(fig, **kwargs))

/usr/local/lib/python3.7/site-packages/IPython/core/pylabtools.py in print_figure(fig, fmt, bbox_inches, **kwargs)
    126 
    127     bytes_io = BytesIO()
--> 128     fig.canvas.print_figure(bytes_io, **kw)
    129     data = bytes_io.getvalue()
    130     if fmt == 'svg':

/usr/local/lib/python3.7/site-packages/matplotlib/backend_bases.py in print_figure(self, filename, dpi, facecolor, edgecolor, orientation, format, bbox_inches, pad_inches, bbox_extra_artists, backend, **kwargs)
   2191                            else suppress())
   2192                     with ctx:
-> 2193                         self.figure.draw(renderer)
   2194 
   2195                     bbox_inches = self.figure.get_tightbbox(

/usr/local/lib/python3.7/site-packages/matplotlib/artist.py in draw_wrapper(artist, renderer, *args, **kwargs)
     39                 renderer.start_filter()
     40 
---> 41             return draw(artist, renderer, *args, **kwargs)
     42         finally:
     43             if artist.get_agg_filter() is not None:

/usr/local/lib/python3.7/site-packages/matplotlib/figure.py in draw(self, renderer)
   1862             self.patch.draw(renderer)
   1863             mimage._draw_list_compositing_images(
-> 1864                 renderer, self, artists, self.suppressComposite)
   1865 
   1866             renderer.close_group('figure')

/usr/local/lib/python3.7/site-packages/matplotlib/image.py in _draw_list_compositing_images(renderer, parent, artists, suppress_composite)
    129     if not_composite or not has_images:
    130         for a in artists:
--> 131             a.draw(renderer)
    132     else:
    133         # Composite any adjacent images together

/usr/local/lib/python3.7/site-packages/matplotlib/artist.py in draw_wrapper(artist, renderer, *args, **kwargs)
     39                 renderer.start_filter()
     40 
---> 41             return draw(artist, renderer, *args, **kwargs)
     42         finally:
     43             if artist.get_agg_filter() is not None:

/usr/local/lib/python3.7/site-packages/matplotlib/cbook/deprecation.py in wrapper(*inner_args, **inner_kwargs)
    409                          else deprecation_addendum,
    410                 **kwargs)
--> 411         return func(*inner_args, **inner_kwargs)
    412 
    413     return wrapper

/usr/local/lib/python3.7/site-packages/matplotlib/axes/_base.py in draw(self, renderer, inframe)
   2745             renderer.stop_rasterizing()
   2746 
-> 2747         mimage._draw_list_compositing_images(renderer, self, artists)
   2748 
   2749         renderer.close_group('axes')

/usr/local/lib/python3.7/site-packages/matplotlib/image.py in _draw_list_compositing_images(renderer, parent, artists, suppress_composite)
    129     if not_composite or not has_images:
    130         for a in artists:
--> 131             a.draw(renderer)
    132     else:
    133         # Composite any adjacent images together

/usr/local/lib/python3.7/site-packages/mpl_toolkits/axisartist/axis_artist.py in draw(self, renderer)
    686         if self._grid_helper is not None:
    687             self._grid_helper.update_lim(self.axes)
--> 688             gl = self._grid_helper.get_gridlines(self._which, self._axis)
    689             if gl:
    690                 self.set_segments([np.transpose(l) for l in gl])

/usr/local/lib/python3.7/site-packages/mpl_toolkits/axisartist/axislines.py in get_gridlines(self, which, axis)
    440             x1, x2 = self.axes.get_xlim()
    441             locs = []
--> 442             if self.axes.yaxis._gridOnMajor:
    443                 locs.extend(self.axes.yaxis.major.locator())
    444             if self.axes.yaxis._gridOnMinor:

AttributeError: 'YAxis' object has no attribute '_gridOnMajor'
@alexlenail
Copy link
Author

Downgrading matplotlib to 3.1.1 from 3.4.3 resolves this issue.

@alexlenail
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant