Title: Confusing error on fully commented-out usetex strings · Issue #16409 · matplotlib/matplotlib · GitHub
Open Graph Title: Confusing error on fully commented-out usetex strings · Issue #16409 · matplotlib/matplotlib
X Title: Confusing error on fully commented-out usetex strings · Issue #16409 · matplotlib/matplotlib
Description: Bug report I was trying to generate some figures using the latex fonts (rc('text', usetex=True)), but I always get an error (I also tried on linux). If I set usetex=False, no error is raised and the figure is properly generated, even the...
Open Graph Description: Bug report I was trying to generate some figures using the latex fonts (rc('text', usetex=True)), but I always get an error (I also tried on linux). If I set usetex=False, no error is raised and th...
X Description: Bug report I was trying to generate some figures using the latex fonts (rc('text', usetex=True)), but I always get an error (I also tried on linux). If I set usetex=False, no error is raise...
Opengraph URL: https://github.com/matplotlib/matplotlib/issues/16409
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Confusing error on fully commented-out usetex strings","articleBody":"### Bug report\r\nI was trying to generate some figures using the latex fonts (rc('text', usetex=True)), but I always get an error (I also tried on linux). If I set usetex=False, no error is raised and the figure is properly generated, even the tex characters are generated.\r\n\r\nIf the figure is not composed by subplots, no error is raised, so, I think is something between subplots and tex.\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\nfrom matplotlib import rc, gridspec\r\nimport matplotlib.pyplot as plt\r\nfrom numpy.random.mtrand import randint\r\nfrom numpy import linspace\r\nimport matplotlib.ticker as mtick\r\n\r\nfig = plt.figure(tight_layout=True, figsize=(9, 6))\r\nrc('text', usetex=True)\r\ngs = gridspec.GridSpec(2, 2)\r\naxs = [ fig.add_subplot(gs[0, :]), fig.add_subplot(gs[1, 0]), fig.add_subplot(gs[1, 1])]\r\ncolors = ['royalblue', 'darkorange']\r\n\r\nall_names = [['TEXT$_1$-A', 'TEXT$_1$-B'], ['TEXT$_2$-A', 'TEXT_2-B']]\r\n\r\nfor names in all_names:\r\n y_plot = randint(-50, 50, 5000)\r\n x_plot = linspace(0, 100, len(y_plot))\r\n \r\n ax = axs[0]\r\n ax.plot(x_plot, y_plot, label='{} / {}'.format(*names) if len(all_names) \u003e 1 else None)\r\n \r\n ax.set_xlabel(\"% of instances\")\r\n ax.set_yscale('symlog')\r\n \r\n ax.set_ylabel('ratio'.format(*names))\r\n ax.legend(loc='upper right')\r\n\r\n ax.xaxis.set_major_locator(mtick.MultipleLocator(25))\r\n ax.xaxis.set_minor_locator(mtick.MultipleLocator(5))\r\n ax.xaxis.set_major_formatter(mtick.PercentFormatter(100))\r\n ax.grid(True, which='Major', axis='both', linestyle='--', color='silver')\r\n \r\n ax = axs[1]\r\n ax.plot(x_plot, y_plot, label=r'{} / {}'.format(*names) if len(all_names) \u003e 1 else None)\r\n ax.set_xlim(0, 5) \r\n ax.grid(True, which='both', axis='both', linestyle='--', color='silver')\r\n ax.set_yscale('linear')\r\n\r\n ax = axs[2]\r\n ax.plot(x_plot, y_plot, label=r'{} / {}'.format(*names) if len(all_names) \u003e 1 else None)\r\n ax.set_yscale('log')\r\n ax.set_xlim(95, 100)\r\n ax.grid(True, which='Major', axis='both', linestyle='--', color='silver')\r\n ax.xaxis.set_major_locator(mtick.MultipleLocator(5))\r\n ax.xaxis.set_minor_locator(mtick.MultipleLocator(1))\r\n ax.xaxis.set_major_formatter(mtick.PercentFormatter(100))\r\n ax.xaxis.set_minor_formatter(mtick.PercentFormatter(100))\r\n\r\nfig.align_labels()\r\nplt.tight_layout()\r\nplt.show()\r\n\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\nTraceback (most recent call last):\r\n File \"C:\\research\\accasim-tests\\new_model\\analysis\\tex_error.py\", line 52, in \u003cmodule\u003e\r\n plt.tight_layout()\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\pyplot.py\", line 1368, in tight_layout\r\n gcf().tight_layout(pad=pad, h_pad=h_pad, w_pad=w_pad, rect=rect)\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\figure.py\", line 2476, in tight_layout\r\n pad=pad, h_pad=h_pad, w_pad=w_pad, rect=rect)\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\tight_layout.py\", line 362, in get_tight_layout_figure\r\n pad=pad, h_pad=h_pad, w_pad=w_pad)\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\tight_layout.py\", line 111, in auto_adjust_subplotpars\r\n tight_bbox_raw = union([ax.get_tightbbox(renderer) for ax in subplots\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\tight_layout.py\", line 112, in \u003clistcomp\u003e\r\n if ax.get_visible()])\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\axes\\_base.py\", line 4357, in get_tightbbox\r\n bb_xaxis = self.xaxis.get_tightbbox(renderer)\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\axis.py\", line 1178, in get_tightbbox\r\n *ticklabelBoxes2,\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\axis.py\", line 1176, in \u003cgenexpr\u003e\r\n if a.get_visible()),\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\text.py\", line 890, in get_window_extent\r\n bbox, info, descent = self._get_layout(self._renderer)\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\text.py\", line 298, in _get_layout\r\n clean_line, self._fontproperties, ismath=ismath)\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\backends\\backend_agg.py\", line 201, in get_text_width_height_descent\r\n s, fontsize, renderer=self)\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\texmanager.py\", line 449, in get_text_width_height_descent\r\n with dviread.Dvi(dvifile, 72 * dpi_fraction) as dvi:\r\n File \"C:\\Program Files\\Python36\\lib\\site-packages\\matplotlib\\dviread.py\", line 198, in __init__\r\n self.file = open(filename, 'rb')\r\nFileNotFoundError: [Errno 2] No such file or directory: 'C:\\\\Users\\\\cgall\\\\.matplotlib\\\\tex.cache\\\\aee1b2d0939944ebcda4231dd9a1549a.dvi'\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: Win 10\r\n * Matplotlib version: 3.1.2\r\n * Matplotlib backend (`print(matplotlib.get_backend())`): TkAgg\r\n * Python version: 3.6\r\n * Other libraries: numpy 1.16.3\r\n\r\nMatplotlib installed via pip command\r\n","author":{"url":"https://github.com/cgalleguillosm","@type":"Person","name":"cgalleguillosm"},"datePublished":"2020-02-04T21:28:08.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":3},"url":"https://github.com/16409/matplotlib/issues/16409"}
| 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:955c8df7-c65a-e2cd-ac94-abdecdb44d82 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | BB72:1B675D:249B9C4:31E1CC3:6A53A5A1 |
| html-safe-nonce | 8074dbbfc63bbd43600c84394a7cebf4cb28ad0ed9279acb45565a42ca7cab7a |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCQjcyOjFCNjc1RDoyNDlCOUM0OjMxRTFDQzM6NkE1M0E1QTEiLCJ2aXNpdG9yX2lkIjoiNzA0OTMwMjk5ODM0MjkzNTk2OSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | cd060f0f0dccf11d708018affced75143ad72ffe0cb23907a3bf425bc1c69ab8 |
| hovercard-subject-tag | issue:559989203 |
| 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/16409/issue_layout |
| twitter:image | https://opengraph.githubassets.com/7b94426e22d69d03eb7d9ffd5a6d629915f50638507d3daf384701920286e18e/matplotlib/matplotlib/issues/16409 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/7b94426e22d69d03eb7d9ffd5a6d629915f50638507d3daf384701920286e18e/matplotlib/matplotlib/issues/16409 |
| og:image:alt | Bug report I was trying to generate some figures using the latex fonts (rc('text', usetex=True)), but I always get an error (I also tried on linux). If I set usetex=False, no error is raised and th... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | cgalleguillosm |
| hostname | github.com |
| expected-hostname | github.com |
| None | b9a586c06a05a7a86fc7e3f4dbd03e42f6869085879aa184aa6369456dbd50fb |
| 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 | 07a982c1d40157c619b364352b704c3ce66bb332 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width