{"action":"opened","issue":{"url":"https://api.github.com/repos/matplotlib/matplotlib/issues/5618","labels_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/5618/labels{/name}","comments_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/5618/comments","events_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/5618/events","html_url":"https://github.com/matplotlib/matplotlib/issues/5618","id":120415914,"number":5618,"title":"New rcParams requests","user":{"login":"notmatthancock","id":1588456,"avatar_url":"https://avatars.githubusercontent.com/u/1588456?v=3","gravatar_id":"","url":"https://api.github.com/users/notmatthancock","html_url":"https://github.com/notmatthancock","followers_url":"https://api.github.com/users/notmatthancock/followers","following_url":"https://api.github.com/users/notmatthancock/following{/other_user}","gists_url":"https://api.github.com/users/notmatthancock/gists{/gist_id}","starred_url":"https://api.github.com/users/notmatthancock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/notmatthancock/subscriptions","organizations_url":"https://api.github.com/users/notmatthancock/orgs","repos_url":"https://api.github.com/users/notmatthancock/repos","events_url":"https://api.github.com/users/notmatthancock/events{/privacy}","received_events_url":"https://api.github.com/users/notmatthancock/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-12-04T14:49:43Z","updated_at":"2015-12-04T14:49:43Z","closed_at":null,"body":"## Request 1: `imshow` should have separate `rcParams` for removing ticks and grid.\r\n\r\nThe `image` key should take additional parameters, so that x and y ticks are not present by default, and the grid is not overlaid by default if `axes.grid` is `True`. For example `image.axis: False` would be ideal. To me, it quite reasonable to want `axes.grid: True` as the default for numerical plots as well a separate default for `imshow` since they have very different use cases.\r\n\r\nHere is an example:\r\n\r\n    import matplotlib\r\n    matplotlib.rcdefaults()\r\n    matplotlib.use('qt4agg') # or whatever\r\n    matplotlib.rcParams['axes.grid'] = True\r\n    matplotlib.rcParams['axes.axisbelow'] = True\r\n    matplotlib.rcParams['grid.linestyle'] = '--'\r\n    matplotlib.rcParams['grid.color'] = 'red'\r\n    matplotlib.rcParams['grid.linewidth'] = 2.0\r\n\r\n    import matplotlib.pyplot as plt\r\n    from numpy import zeros,cos,linspace\r\n\r\n    x = linspace(0,6.28,100)\r\n\r\n    fig = plt.figure(figsize=(12,6))\r\n\r\n    ax1 = fig.add_subplot(121)\r\n    ax1.plot(x,cos(x+2*cos(2*x)),lw=3)\r\n    ax1.set_title('Ticks and grid are a nice\\ndefault for numerical plots.')\r\n\r\n    ax2 = fig.add_subplot(122)\r\n    ax2.imshow(zeros((100,100)), cmap=plt.cm.gray)\r\n    ax2.set_title('Ticks and grid are not a nice\\ndefault for image plots.')\r\n\r\n    plt.show()\r\n\r\n![image-axis](https://cloud.githubusercontent.com/assets/1588456/11591888/20a2ea08-9a69-11e5-8f89-f9577b46bbe6.png)\r\n\r\n## Request 2: Fix inconsistent `rcParams` behavior with regard to plots that add patches.\r\n\r\nSome plots that use patches follow the `axes.prop_cycle`, while others do not. For example `hist` obeys both `axes.prop_cycle` and `patch.edgecolor`, but ignores `patch.facecolor` (even if `axes.prop_cycle` is not set); however, `violinplot` ignores everything except `patch.edgecolor`, which is not apparent due to the default `alpha` setting for `violinplot` (why is this default??). Here is an example:\r\n\r\n    import matplotlib\r\n    from cycler import cycler\r\n\r\n    matplotlib.rcdefaults()\r\n    matplotlib.use('qt4agg')\r\n    matplotlib.rcParams['axes.prop_cycle'] = cycler('color', ['pink','purple','salmon'])\r\n    matplotlib.rcParams['patch.facecolor'] = 'pink'\r\n    matplotlib.rcParams['patch.edgecolor'] = 'blue'\r\n\r\n    import matplotlib.pyplot as plt\r\n    from numpy.random import randn\r\n\r\n    fig = plt.figure(figsize=(12,6))\r\n\r\n    X = randn(100)\r\n\r\n    ax = fig.add_subplot(121)\r\n    for i in range(3):\r\n        ax.hist(X+2*i)\r\n\r\n    ax = fig.add_subplot(122)\r\n    for i in range(3):\r\n        ax.violinplot(X+2*i)\r\n\r\n    plt.show()\r\n\r\n![violinplot-color-test](https://cloud.githubusercontent.com/assets/1588456/11592284/9e8f96c6-9a6b-11e5-9cc5-d57348fb3498.png)\r\n"}}