{"action":"created","comment":{"url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/comments/212560138","pull_request_review_id":149210523,"id":212560138,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxMjU2MDEzOA==","diff_hunk":"@@ -0,0 +1,196 @@\n+\"\"\"\n+********************************\n+Creating Colormaps in Matplotlib\n+********************************\n+\n+Creating and manipulating colormaps in Matplotlib is straight-forward\n+using the class `.ListedColormap` and a Nx4 numpy array of values\n+between 0 and 1 to represent the RGBA values of the colormap.  There\n+is also a `.LinearSegmentedColormap` class that allows colormaps to be\n+specified with far fewer anchor points defining segments, and linearly\n+interpolating between the anchor points.\n+\n+Getting colormaps and accessing their values\n+============================================\n+\n+First, getting a named colormap, most of which are listed in\n+:doc:`/tutorials/colors/colormaps` requires the use of\n+`.matplotlib.cm.get_cmap`, which returns a\n+:class:`.matplotlib.colors.ListedColormap` object.  The second argument gives\n+the size of the list of colors used to define the colormap, and below we\n+use a modest value of 12 so there are not a lot of values to look at.\n+\"\"\"\n+\n+import numpy as np\n+import matplotlib as mpl\n+import matplotlib.pyplot as plt\n+from matplotlib import cm\n+from matplotlib.colors import ListedColormap, LinearSegmentedColormap\n+from collections import OrderedDict\n+\n+viridis = cm.get_cmap('viridis', 12)\n+print(viridis)\n+\n+##############################################################################\n+# The object ``viridis`` is a callable, that when passed a float between\n+# 0 and 1 returns an RGBA value from the colormap:\n+\n+print(viridis(0.56))\n+\n+##############################################################################\n+# The list of colors that comprise the colormap can be directly accessed using\n+# the ``colors`` property,\n+# or it can be acccessed indirectly by calling  ``viridis`` with an array\n+# of values matching the length of the colormap.  Note that the returned list\n+# is in the form of an RGBA Nx4 array, where N is the length of the colormap.\n+\n+print('viridis.colors', viridis.colors)\n+print('viridis(range(12))', viridis(range(12)))\n+print('viridis(np.linspace(0, 1, 12))', viridis(np.linspace(0, 1, 12)))\n+\n+##############################################################################\n+# The colormap is a lookup table, so \"oversampling\" the colormap returns\n+# nearest-neighbor interpolation (note the repeated colors in the list below)\n+\n+print('viridis(np.linspace(0, 1, 15))', viridis(np.linspace(0, 1, 15)))\n+\n+##############################################################################\n+# Creating a new ListedColormap\n+# =============================\n+#\n+# This is essential the inverse operation of the above where we supply a\n+# Nx4 numpy array with all values between 0 and 1,\n+# to `.ListedColormap` to make a new colormap.  This means that\n+# any numpy operations that we can do on a Nx4 array make carpentry of\n+# new colormaps from existing colormaps quite straight forward.\n+#\n+# Suppose we want to make the first 25 entries of a 256-length \"viridis\"\n+# colormap pink for some reason:\n+\n+viridis = cm.get_cmap('viridis', 256)\n+newcolors = viridis(np.linspace(0, 1, 256))\n+pink = np.array([248/256, 24/256, 148/256, 1])\n+newcolors[:25, :] = pink\n+newcmp = ListedColormap(newcolors)\n+\n+\n+def plot_examples(cms):\n+    \"\"\"\n+    helper function to plot two colormaps\n+    \"\"\"\n+    np.random.seed(19680801)\n+    data = np.random.randn(30, 30)\n+\n+    fig, axs = plt.subplots(1, 2, figsize=(6, 3), constrained_layout=True)\n+    for [ax, cmap] in zip(axs, cms):\n+        psm = ax.pcolormesh(data, cmap=cmap, rasterized=True, vmin=-4, vmax=4)\n+        fig.colorbar(psm, ax=ax)\n+    plt.show()\n+\n+plot_examples([viridis, newcmp])\n+\n+##############################################################################\n+# We can easily reduce the dynamic range of a colormap; here we choose the\n+# middle 0.5 of the colormap.  However, we need to interpolate from a larger\n+# colormap, otherwise the new colormap will have repeated values.\n+\n+viridisBig = cm.get_cmap('viridis', 512)\n+newcmp = ListedColormap(viridisBig(np.linspace(0.25, 0.75, 256)))\n+plot_examples([viridis, newcmp])\n+\n+##############################################################################\n+# and we can easily concatenate two colormaps:\n+\n+top = cm.get_cmap('Oranges_r', 128)\n+bottom = cm.get_cmap('Blues', 128)\n+\n+newcolors = np.vstack((top(np.linspace(0, 1, 128)),\n+                       bottom(np.linspace(0, 1, 128))))\n+newcmp = ListedColormap(newcolors, name='OrangeBlue')\n+plot_examples([viridis, newcmp])\n+\n+##############################################################################\n+# Of course we need not start from a named colormap, we just need to create\n+# the Nx4 array to pass to `.ListedColormap`.  Here we  create a\n+# brown colormap that goes to white....\n+\n+N = 256\n+vals = np.ones((N, 4))\n+vals[:, 0] = np.linspace(90/256, 1, N)\n+vals[:, 1] = np.linspace(39/256, 1, N)\n+vals[:, 2] = np.linspace(41/256, 1, N)\n+newcmp = ListedColormap(vals)\n+plot_examples([viridis, newcmp])\n+\n+##############################################################################\n+# LinearSegmented colormaps\n+# =========================\n+#\n+# `.LinearSegmentedColormap` have an alternate way to specify colormaps that","path":"tutorials/colors/colormap-manipulation.py","position":129,"original_position":129,"commit_id":"c6544d8a70305a20d63b86060a1b2eadc83ee5bd","original_commit_id":"c6544d8a70305a20d63b86060a1b2eadc83ee5bd","user":{"login":"timhoffm","id":2836374,"node_id":"MDQ6VXNlcjI4MzYzNzQ=","avatar_url":"https://avatars1.githubusercontent.com/u/2836374?v=4","gravatar_id":"","url":"https://api.github.com/users/timhoffm","html_url":"https://github.com/timhoffm","followers_url":"https://api.github.com/users/timhoffm/followers","following_url":"https://api.github.com/users/timhoffm/following{/other_user}","gists_url":"https://api.github.com/users/timhoffm/gists{/gist_id}","starred_url":"https://api.github.com/users/timhoffm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timhoffm/subscriptions","organizations_url":"https://api.github.com/users/timhoffm/orgs","repos_url":"https://api.github.com/users/timhoffm/repos","events_url":"https://api.github.com/users/timhoffm/events{/privacy}","received_events_url":"https://api.github.com/users/timhoffm/received_events","type":"User","site_admin":false},"body":"Alternative wording:\r\n> LinearSegmentedColormap specifies the colors using anchor points.  The RGB(A) color values for positions in between the anchor points are linearly interpolated from the anchor point RGB(A) values.","created_at":"2018-08-24T08:43:08Z","updated_at":"2018-08-24T08:52:56Z","html_url":"https://github.com/matplotlib/matplotlib/pull/11905#discussion_r212560138","pull_request_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/11905","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/comments/212560138"},"html":{"href":"https://github.com/matplotlib/matplotlib/pull/11905#discussion_r212560138"},"pull_request":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/11905"}}},"pull_request":{"url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/11905","id":209932865,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA5OTMyODY1","html_url":"https://github.com/matplotlib/matplotlib/pull/11905","diff_url":"https://github.com/matplotlib/matplotlib/pull/11905.diff","patch_url":"https://github.com/matplotlib/matplotlib/pull/11905.patch","issue_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/11905","number":11905,"state":"open","locked":false,"title":"DOC: colormap-manipulation tutorial","user":{"login":"jklymak","id":1562854,"node_id":"MDQ6VXNlcjE1NjI4NTQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1562854?v=4","gravatar_id":"","url":"https://api.github.com/users/jklymak","html_url":"https://github.com/jklymak","followers_url":"https://api.github.com/users/jklymak/followers","following_url":"https://api.github.com/users/jklymak/following{/other_user}","gists_url":"https://api.github.com/users/jklymak/gists{/gist_id}","starred_url":"https://api.github.com/users/jklymak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jklymak/subscriptions","organizations_url":"https://api.github.com/users/jklymak/orgs","repos_url":"https://api.github.com/users/jklymak/repos","events_url":"https://api.github.com/users/jklymak/events{/privacy}","received_events_url":"https://api.github.com/users/jklymak/received_events","type":"User","site_admin":false},"body":"## PR Summary\r\n\r\ncloses #11903  \r\n\r\nShows how to manipulate colormaps.  \r\n\r\n\r\n\r\n## PR Checklist\r\n\r\n- [x] Needs links in API docs...\r\n- [x] Code is PEP 8 compliant\r\n- [x] Documentation is sphinx and numpydoc compliant\r\n\r\n<!--\r\nThank you so much for your PR!  To help us review your contribution, please\r\nconsider the following points:\r\n\r\n- A development guide is available at https://matplotlib.org/devdocs/devel/index.html.\r\n\r\n- Help with git and github is available at\r\n  https://matplotlib.org/devel/gitwash/development_workflow.html.\r\n\r\n- Do not create the PR out of master, but out of a separate branch.\r\n\r\n- The PR title should summarize the changes, for example \"Raise ValueError on\r\n  non-numeric input to set_xlim\".  Avoid non-descriptive titles such as\r\n  \"Addresses issue #8576\".\r\n\r\n- The summary should provide at least 1-2 sentences describing the pull request\r\n  in detail (Why is this change required?  What problem does it solve?) and\r\n  link to any relevant issues.\r\n\r\n- If you are contributing fixes to docstrings, please pay attention to\r\n  http://matplotlib.org/devel/documenting_mpl.html#formatting.  In particular,\r\n  note the difference between using single backquotes, double backquotes, and\r\n  asterisks in the markup.\r\n\r\nWe understand that PRs can sometimes be overwhelming, especially as the\r\nreviews start coming in.  Please let us know if the reviews are unclear or\r\nthe recommended next step seems overly demanding, if you would like help in\r\naddressing a reviewer's comments, or if you have been waiting too long to hear\r\nback on your PR.\r\n-->\r\n","created_at":"2018-08-21T19:35:33Z","updated_at":"2018-08-24T08:52:56Z","closed_at":null,"merged_at":null,"merge_commit_sha":"3bccce07ff170d1decc6695d7e68f8d72a312e2c","assignee":null,"assignees":[],"requested_reviewers":[{"login":"afvincent","id":17270724,"node_id":"MDQ6VXNlcjE3MjcwNzI0","avatar_url":"https://avatars1.githubusercontent.com/u/17270724?v=4","gravatar_id":"","url":"https://api.github.com/users/afvincent","html_url":"https://github.com/afvincent","followers_url":"https://api.github.com/users/afvincent/followers","following_url":"https://api.github.com/users/afvincent/following{/other_user}","gists_url":"https://api.github.com/users/afvincent/gists{/gist_id}","starred_url":"https://api.github.com/users/afvincent/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/afvincent/subscriptions","organizations_url":"https://api.github.com/users/afvincent/orgs","repos_url":"https://api.github.com/users/afvincent/repos","events_url":"https://api.github.com/users/afvincent/events{/privacy}","received_events_url":"https://api.github.com/users/afvincent/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":77884,"node_id":"MDU6TGFiZWw3Nzg4NA==","url":"https://api.github.com/repos/matplotlib/matplotlib/labels/Documentation","name":"Documentation","color":"0015ff","default":false}],"milestone":{"url":"https://api.github.com/repos/matplotlib/matplotlib/milestones/33","html_url":"https://github.com/matplotlib/matplotlib/milestone/33","labels_url":"https://api.github.com/repos/matplotlib/matplotlib/milestones/33/labels","id":3106573,"node_id":"MDk6TWlsZXN0b25lMzEwNjU3Mw==","number":33,"title":"v2.2-doc","description":"Tracker for documentation updates to 2.2 docs.\r\n\r\non-merge: safe_backport to v2.2.3-doc","creator":{"login":"tacaswell","id":199813,"node_id":"MDQ6VXNlcjE5OTgxMw==","avatar_url":"https://avatars3.githubusercontent.com/u/199813?v=4","gravatar_id":"","url":"https://api.github.com/users/tacaswell","html_url":"https://github.com/tacaswell","followers_url":"https://api.github.com/users/tacaswell/followers","following_url":"https://api.github.com/users/tacaswell/following{/other_user}","gists_url":"https://api.github.com/users/tacaswell/gists{/gist_id}","starred_url":"https://api.github.com/users/tacaswell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tacaswell/subscriptions","organizations_url":"https://api.github.com/users/tacaswell/orgs","repos_url":"https://api.github.com/users/tacaswell/repos","events_url":"https://api.github.com/users/tacaswell/events{/privacy}","received_events_url":"https://api.github.com/users/tacaswell/received_events","type":"User","site_admin":false},"open_issues":19,"closed_issues":148,"state":"open","created_at":"2018-02-12T03:23:06Z","updated_at":"2018-08-23T01:33:41Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/11905/commits","review_comments_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/11905/comments","review_comment_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/comments{/number}","comments_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/11905/comments","statuses_url":"https://api.github.com/repos/matplotlib/matplotlib/statuses/c6544d8a70305a20d63b86060a1b2eadc83ee5bd","head":{"label":"jklymak:doc-add-colormap-manipulation","ref":"doc-add-colormap-manipulation","sha":"c6544d8a70305a20d63b86060a1b2eadc83ee5bd","user":{"login":"jklymak","id":1562854,"node_id":"MDQ6VXNlcjE1NjI4NTQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1562854?v=4","gravatar_id":"","url":"https://api.github.com/users/jklymak","html_url":"https://github.com/jklymak","followers_url":"https://api.github.com/users/jklymak/followers","following_url":"https://api.github.com/users/jklymak/following{/other_user}","gists_url":"https://api.github.com/users/jklymak/gists{/gist_id}","starred_url":"https://api.github.com/users/jklymak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jklymak/subscriptions","organizations_url":"https://api.github.com/users/jklymak/orgs","repos_url":"https://api.github.com/users/jklymak/repos","events_url":"https://api.github.com/users/jklymak/events{/privacy}","received_events_url":"https://api.github.com/users/jklymak/received_events","type":"User","site_admin":false},"repo":{"id":93901119,"node_id":"MDEwOlJlcG9zaXRvcnk5MzkwMTExOQ==","name":"matplotlib","full_name":"jklymak/matplotlib","owner":{"login":"jklymak","id":1562854,"node_id":"MDQ6VXNlcjE1NjI4NTQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1562854?v=4","gravatar_id":"","url":"https://api.github.com/users/jklymak","html_url":"https://github.com/jklymak","followers_url":"https://api.github.com/users/jklymak/followers","following_url":"https://api.github.com/users/jklymak/following{/other_user}","gists_url":"https://api.github.com/users/jklymak/gists{/gist_id}","starred_url":"https://api.github.com/users/jklymak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jklymak/subscriptions","organizations_url":"https://api.github.com/users/jklymak/orgs","repos_url":"https://api.github.com/users/jklymak/repos","events_url":"https://api.github.com/users/jklymak/events{/privacy}","received_events_url":"https://api.github.com/users/jklymak/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jklymak/matplotlib","description":"matplotlib: plotting with Python","fork":true,"url":"https://api.github.com/repos/jklymak/matplotlib","forks_url":"https://api.github.com/repos/jklymak/matplotlib/forks","keys_url":"https://api.github.com/repos/jklymak/matplotlib/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jklymak/matplotlib/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jklymak/matplotlib/teams","hooks_url":"https://api.github.com/repos/jklymak/matplotlib/hooks","issue_events_url":"https://api.github.com/repos/jklymak/matplotlib/issues/events{/number}","events_url":"https://api.github.com/repos/jklymak/matplotlib/events","assignees_url":"https://api.github.com/repos/jklymak/matplotlib/assignees{/user}","branches_url":"https://api.github.com/repos/jklymak/matplotlib/branches{/branch}","tags_url":"https://api.github.com/repos/jklymak/matplotlib/tags","blobs_url":"https://api.github.com/repos/jklymak/matplotlib/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jklymak/matplotlib/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jklymak/matplotlib/git/refs{/sha}","trees_url":"https://api.github.com/repos/jklymak/matplotlib/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jklymak/matplotlib/statuses/{sha}","languages_url":"https://api.github.com/repos/jklymak/matplotlib/languages","stargazers_url":"https://api.github.com/repos/jklymak/matplotlib/stargazers","contributors_url":"https://api.github.com/repos/jklymak/matplotlib/contributors","subscribers_url":"https://api.github.com/repos/jklymak/matplotlib/subscribers","subscription_url":"https://api.github.com/repos/jklymak/matplotlib/subscription","commits_url":"https://api.github.com/repos/jklymak/matplotlib/commits{/sha}","git_commits_url":"https://api.github.com/repos/jklymak/matplotlib/git/commits{/sha}","comments_url":"https://api.github.com/repos/jklymak/matplotlib/comments{/number}","issue_comment_url":"https://api.github.com/repos/jklymak/matplotlib/issues/comments{/number}","contents_url":"https://api.github.com/repos/jklymak/matplotlib/contents/{+path}","compare_url":"https://api.github.com/repos/jklymak/matplotlib/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jklymak/matplotlib/merges","archive_url":"https://api.github.com/repos/jklymak/matplotlib/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jklymak/matplotlib/downloads","issues_url":"https://api.github.com/repos/jklymak/matplotlib/issues{/number}","pulls_url":"https://api.github.com/repos/jklymak/matplotlib/pulls{/number}","milestones_url":"https://api.github.com/repos/jklymak/matplotlib/milestones{/number}","notifications_url":"https://api.github.com/repos/jklymak/matplotlib/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jklymak/matplotlib/labels{/name}","releases_url":"https://api.github.com/repos/jklymak/matplotlib/releases{/id}","deployments_url":"https://api.github.com/repos/jklymak/matplotlib/deployments","created_at":"2017-06-09T22:24:38Z","updated_at":"2017-06-10T22:48:17Z","pushed_at":"2018-08-23T18:20:52Z","git_url":"git://github.com/jklymak/matplotlib.git","ssh_url":"git@github.com:jklymak/matplotlib.git","clone_url":"https://github.com/jklymak/matplotlib.git","svn_url":"https://github.com/jklymak/matplotlib","homepage":"http://matplotlib.org/","size":337004,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"placeholder"}},"base":{"label":"matplotlib:master","ref":"master","sha":"d3845952b025dc6d6f486234a8cd258430ee908e","user":{"login":"matplotlib","id":215947,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIxNTk0Nw==","avatar_url":"https://avatars0.githubusercontent.com/u/215947?v=4","gravatar_id":"","url":"https://api.github.com/users/matplotlib","html_url":"https://github.com/matplotlib","followers_url":"https://api.github.com/users/matplotlib/followers","following_url":"https://api.github.com/users/matplotlib/following{/other_user}","gists_url":"https://api.github.com/users/matplotlib/gists{/gist_id}","starred_url":"https://api.github.com/users/matplotlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matplotlib/subscriptions","organizations_url":"https://api.github.com/users/matplotlib/orgs","repos_url":"https://api.github.com/users/matplotlib/repos","events_url":"https://api.github.com/users/matplotlib/events{/privacy}","received_events_url":"https://api.github.com/users/matplotlib/received_events","type":"Organization","site_admin":false},"repo":{"id":1385122,"node_id":"MDEwOlJlcG9zaXRvcnkxMzg1MTIy","name":"matplotlib","full_name":"matplotlib/matplotlib","owner":{"login":"matplotlib","id":215947,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIxNTk0Nw==","avatar_url":"https://avatars0.githubusercontent.com/u/215947?v=4","gravatar_id":"","url":"https://api.github.com/users/matplotlib","html_url":"https://github.com/matplotlib","followers_url":"https://api.github.com/users/matplotlib/followers","following_url":"https://api.github.com/users/matplotlib/following{/other_user}","gists_url":"https://api.github.com/users/matplotlib/gists{/gist_id}","starred_url":"https://api.github.com/users/matplotlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matplotlib/subscriptions","organizations_url":"https://api.github.com/users/matplotlib/orgs","repos_url":"https://api.github.com/users/matplotlib/repos","events_url":"https://api.github.com/users/matplotlib/events{/privacy}","received_events_url":"https://api.github.com/users/matplotlib/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/matplotlib/matplotlib","description":"matplotlib: plotting with Python","fork":false,"url":"https://api.github.com/repos/matplotlib/matplotlib","forks_url":"https://api.github.com/repos/matplotlib/matplotlib/forks","keys_url":"https://api.github.com/repos/matplotlib/matplotlib/keys{/key_id}","collaborators_url":"https://api.github.com/repos/matplotlib/matplotlib/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/matplotlib/matplotlib/teams","hooks_url":"https://api.github.com/repos/matplotlib/matplotlib/hooks","issue_events_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/events{/number}","events_url":"https://api.github.com/repos/matplotlib/matplotlib/events","assignees_url":"https://api.github.com/repos/matplotlib/matplotlib/assignees{/user}","branches_url":"https://api.github.com/repos/matplotlib/matplotlib/branches{/branch}","tags_url":"https://api.github.com/repos/matplotlib/matplotlib/tags","blobs_url":"https://api.github.com/repos/matplotlib/matplotlib/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/matplotlib/matplotlib/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/matplotlib/matplotlib/git/refs{/sha}","trees_url":"https://api.github.com/repos/matplotlib/matplotlib/git/trees{/sha}","statuses_url":"https://api.github.com/repos/matplotlib/matplotlib/statuses/{sha}","languages_url":"https://api.github.com/repos/matplotlib/matplotlib/languages","stargazers_url":"https://api.github.com/repos/matplotlib/matplotlib/stargazers","contributors_url":"https://api.github.com/repos/matplotlib/matplotlib/contributors","subscribers_url":"https://api.github.com/repos/matplotlib/matplotlib/subscribers","subscription_url":"https://api.github.com/repos/matplotlib/matplotlib/subscription","commits_url":"https://api.github.com/repos/matplotlib/matplotlib/commits{/sha}","git_commits_url":"https://api.github.com/repos/matplotlib/matplotlib/git/commits{/sha}","comments_url":"https://api.github.com/repos/matplotlib/matplotlib/comments{/number}","issue_comment_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/comments{/number}","contents_url":"https://api.github.com/repos/matplotlib/matplotlib/contents/{+path}","compare_url":"https://api.github.com/repos/matplotlib/matplotlib/compare/{base}...{head}","merges_url":"https://api.github.com/repos/matplotlib/matplotlib/merges","archive_url":"https://api.github.com/repos/matplotlib/matplotlib/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/matplotlib/matplotlib/downloads","issues_url":"https://api.github.com/repos/matplotlib/matplotlib/issues{/number}","pulls_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls{/number}","milestones_url":"https://api.github.com/repos/matplotlib/matplotlib/milestones{/number}","notifications_url":"https://api.github.com/repos/matplotlib/matplotlib/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/matplotlib/matplotlib/labels{/name}","releases_url":"https://api.github.com/repos/matplotlib/matplotlib/releases{/id}","deployments_url":"https://api.github.com/repos/matplotlib/matplotlib/deployments","created_at":"2011-02-19T03:17:12Z","updated_at":"2018-08-24T08:10:22Z","pushed_at":"2018-08-24T08:41:49Z","git_url":"git://github.com/matplotlib/matplotlib.git","ssh_url":"git@github.com:matplotlib/matplotlib.git","clone_url":"https://github.com/matplotlib/matplotlib.git","svn_url":"https://github.com/matplotlib/matplotlib","homepage":"http://matplotlib.org/","size":333115,"stargazers_count":7789,"watchers_count":7789,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3591,"mirror_url":null,"archived":false,"open_issues_count":1376,"license":null,"forks":3591,"open_issues":1376,"watchers":7789,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/11905"},"html":{"href":"https://github.com/matplotlib/matplotlib/pull/11905"},"issue":{"href":"https://api.github.com/repos/matplotlib/matplotlib/issues/11905"},"comments":{"href":"https://api.github.com/repos/matplotlib/matplotlib/issues/11905/comments"},"review_comments":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/11905/comments"},"review_comment":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/11905/commits"},"statuses":{"href":"https://api.github.com/repos/matplotlib/matplotlib/statuses/c6544d8a70305a20d63b86060a1b2eadc83ee5bd"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"timhoffm"}}