Title: plt.bar with nan input fails rendering in notebook using 3.3.0rc1 · Issue #17868 · matplotlib/matplotlib · GitHub
Open Graph Title: plt.bar with nan input fails rendering in notebook using 3.3.0rc1 · Issue #17868 · matplotlib/matplotlib
X Title: plt.bar with nan input fails rendering in notebook using 3.3.0rc1 · Issue #17868 · matplotlib/matplotlib
Description: Bug report Bug summary A previously-working code (that gets to plot well using other backends or matplotlib==3.2.2) fails to render a plot on Jupyter notebook when using matplotlib==3.3.0rc1. This has to do with np.nan input to plt.bar. ...
Open Graph Description: Bug report Bug summary A previously-working code (that gets to plot well using other backends or matplotlib==3.2.2) fails to render a plot on Jupyter notebook when using matplotlib==3.3.0rc1. This ...
X Description: Bug report Bug summary A previously-working code (that gets to plot well using other backends or matplotlib==3.2.2) fails to render a plot on Jupyter notebook when using matplotlib==3.3.0rc1. This ...
Opengraph URL: https://github.com/matplotlib/matplotlib/issues/17868
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"plt.bar with nan input fails rendering in notebook using 3.3.0rc1 ","articleBody":"\u003c!--To help us understand and resolve your issue, please fill out the form to the best of your ability.--\u003e\r\n\u003c!--You can feel free to delete the sections that do not apply.--\u003e\r\n\r\n### Bug report\r\n\r\n**Bug summary**\r\n\r\n\u003c!--A short 1-2 sentences that succinctly describes the bug--\u003e\r\nA previously-working code (that gets to plot well using other backends or `matplotlib==3.2.2`) fails to render a plot on Jupyter notebook when using `matplotlib==3.3.0rc1`. This has to do with `np.nan` input to `plt.bar`.\r\n\r\n\r\n**Code for reproduction**\r\n\r\n\u003c!--A minimum code snippet required to reproduce the bug.\r\nPlease make sure to minimize the number of dependencies required, and provide\r\nany necessary plotted data.\r\nAvoid using threads, as Matplotlib is (explicitly) not thread-safe.--\u003e\r\n\r\n```python\r\nimport matplotlib.pyplot as plt\r\nimport matplotlib as mpl\r\nimport numpy as np\r\n%matplotlib inline\r\n\r\nx = range(2)\r\nheights = np.asarray([np.nan, 4])\r\n\r\nplt.bar(x, heights)\r\n```\r\n\r\n**Actual outcome**\r\n\r\n\u003c!--The output produced by the above code, which may be a screenshot, console output, etc.--\u003e\r\n\r\n```\r\n\u003cBarContainer object of 2 artists\u003e\r\n---------------------------------------------------------------------------\r\nValueError Traceback (most recent call last)\r\n~/.local/lib/python3.8/site-packages/IPython/core/formatters.py in __call__(self, obj)\r\n 339 pass\r\n 340 else:\r\n--\u003e 341 return printer(obj)\r\n 342 # Finally look for special method names\r\n 343 method = get_real_method(obj, self.print_method)\r\n\r\n~/.local/lib/python3.8/site-packages/IPython/core/pylabtools.py in \u003clambda\u003e(fig)\r\n 246 \r\n 247 if 'png' in formats:\r\n--\u003e 248 png_formatter.for_type(Figure, lambda fig: print_figure(fig, 'png', **kwargs))\r\n 249 if 'retina' in formats or 'png2x' in formats:\r\n 250 png_formatter.for_type(Figure, lambda fig: retina_figure(fig, **kwargs))\r\n\r\n~/.local/lib/python3.8/site-packages/IPython/core/pylabtools.py in print_figure(fig, fmt, bbox_inches, **kwargs)\r\n 130 FigureCanvasBase(fig)\r\n 131 \r\n--\u003e 132 fig.canvas.print_figure(bytes_io, **kw)\r\n 133 data = bytes_io.getvalue()\r\n 134 if fmt == 'svg':\r\n\r\n~/miniconda/envs/seaborn_devenv/lib/python3.8/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)\r\n 2186 self.figure.draw(renderer)\r\n 2187 \r\n-\u003e 2188 bbox_inches = self.figure.get_tightbbox(\r\n 2189 renderer, bbox_extra_artists=bbox_extra_artists)\r\n 2190 if pad_inches is None:\r\n\r\n~/miniconda/envs/seaborn_devenv/lib/python3.8/site-packages/matplotlib/figure.py in get_tightbbox(self, renderer, bbox_extra_artists)\r\n 2500 \r\n 2501 for a in artists:\r\n-\u003e 2502 bbox = a.get_tightbbox(renderer)\r\n 2503 if bbox is not None and (bbox.width != 0 or bbox.height != 0):\r\n 2504 bb.append(bbox)\r\n\r\n~/miniconda/envs/seaborn_devenv/lib/python3.8/site-packages/matplotlib/artist.py in get_tightbbox(self, renderer)\r\n 276 The enclosing bounding box (in figure pixel coordinates).\r\n 277 \"\"\"\r\n--\u003e 278 bbox = self.get_window_extent(renderer)\r\n 279 if self.get_clip_on():\r\n 280 clip_box = self.get_clip_box()\r\n\r\n~/miniconda/envs/seaborn_devenv/lib/python3.8/site-packages/matplotlib/patches.py in get_window_extent(self, renderer)\r\n 596 \r\n 597 def get_window_extent(self, renderer=None):\r\n--\u003e 598 return self.get_path().get_extents(self.get_transform())\r\n 599 \r\n 600 def _convert_xy_units(self, xy):\r\n\r\n~/miniconda/envs/seaborn_devenv/lib/python3.8/site-packages/matplotlib/path.py in get_extents(self, transform, **kwargs)\r\n 590 self = transform.transform_path(self)\r\n 591 bbox = Bbox.null()\r\n--\u003e 592 for curve, code in self.iter_bezier(**kwargs):\r\n 593 # places where the derivative is zero can be extrema\r\n 594 _, dzeros = curve.axis_aligned_extrema()\r\n\r\n~/miniconda/envs/seaborn_devenv/lib/python3.8/site-packages/matplotlib/path.py in iter_bezier(self, **kwargs)\r\n 442 if first_vert is None:\r\n 443 if code != Path.MOVETO:\r\n--\u003e 444 raise ValueError(\"Malformed path, must start with MOVETO.\")\r\n 445 if code == Path.MOVETO: # a point is like \"CURVE1\"\r\n 446 first_vert = verts\r\n\r\nValueError: Malformed path, must start with MOVETO.\r\n\r\n\u003cFigure size 432x288 with 1 Axes\u003e\r\n```\r\n\r\n**Expected outcome**\r\n\r\n\u003c!--A description of the expected outcome from the code snippet--\u003e\r\n\u003c!--If this used to work in an earlier version of Matplotlib, please note the version it used to work on--\u003e\r\n\r\n3.2.2:\r\n\r\n\r\n\r\n**Matplotlib version**\r\n\u003c!--Please specify your platform and versions of the relevant libraries you are using:--\u003e\r\n * Operating system: macOS\r\n * Matplotlib version: 3.3.0rc1\r\n * Matplotlib backend (`print(matplotlib.get_backend())`): 'module://ipykernel.pylab.backend_inline'\r\n * Python version: 3.8.3\r\n * Jupyter version (if applicable): notebook 6.0.3, IPython 7.15.0\r\n * Other libraries: \r\n\r\n\u003c!--Please tell us how you installed matplotlib and python e.g., from source, pip, conda--\u003e\r\n\u003c!--If you installed from conda, please specify which channel you used if not the default--\u003e\r\nmatplotlib installed using pip \r\npython installed from conda-forge\r\n","author":{"url":"https://github.com/MaozGelbart","@type":"Person","name":"MaozGelbart"},"datePublished":"2020-07-09T13:31:36.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":6},"url":"https://github.com/17868/matplotlib/issues/17868"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:e98004a5-bef7-e3ae-c240-7b73b9a57657 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | E310:CE000:2C32CC7:3F1D7D6:6A511260 |
| html-safe-nonce | aeba9b55ff450d40d72821b57a0e1375101668d28c199f8d31468ed2d908ce43 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFMzEwOkNFMDAwOjJDMzJDQzc6M0YxRDdENjo2QTUxMTI2MCIsInZpc2l0b3JfaWQiOiI2Njc1ODkzNjQ5NjYwNzc3MDU2IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 330f34d0818238bae4dcefc7f2b1bce587b549b04df0c1869df047a1d519cf9a |
| hovercard-subject-tag | issue:654063395 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/matplotlib/matplotlib/17868/issue_layout |
| twitter:image | https://opengraph.githubassets.com/9f5eb761fef310b83147ec89b62c6fd2efa9c59d453b4aea2af7f281745b3564/matplotlib/matplotlib/issues/17868 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/9f5eb761fef310b83147ec89b62c6fd2efa9c59d453b4aea2af7f281745b3564/matplotlib/matplotlib/issues/17868 |
| og:image:alt | Bug report Bug summary A previously-working code (that gets to plot well using other backends or matplotlib==3.2.2) fails to render a plot on Jupyter notebook when using matplotlib==3.3.0rc1. This ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | MaozGelbart |
| hostname | github.com |
| expected-hostname | github.com |
| None | b076e100febaa00374cd89239f915d00dd3187f7c68b12bc2b7688181305344d |
| turbo-cache-control | no-preview |
| go-import | github.com/matplotlib/matplotlib git https://github.com/matplotlib/matplotlib.git |
| octolytics-dimension-user_id | 215947 |
| octolytics-dimension-user_login | matplotlib |
| octolytics-dimension-repository_id | 1385122 |
| octolytics-dimension-repository_nwo | matplotlib/matplotlib |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 1385122 |
| octolytics-dimension-repository_network_root_nwo | matplotlib/matplotlib |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | f9137f6d981cbbfd780af369f80ce890b2d0d2d4 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width