DOC: Change plot style to matplotlib decault from ggplot
State: closed

A proposal to change plot style in the docs to ``seaborn`` from ``ggplot``.

See also #17423.


Labels:
name: Docs
name: Visualization
description: plotting

Comments:
can you post a screen shot of the change (just a single page is fine, just something for people to look)
Some plot files:
![image](https://user-images.githubusercontent.com/26364415/30163260-3e30e8ec-93d0-11e7-8267-e7fad81822f4.png)

![image](https://user-images.githubusercontent.com/26364415/30163362-974dd7f0-93d0-11e7-8040-85d54e441825.png)


![image](https://user-images.githubusercontent.com/26364415/30163347-894a2064-93d0-11e7-9263-5455ac1103b3.png)

![image](https://user-images.githubusercontent.com/26364415/30163388-b32b3210-93d0-11e7-8d8b-910b93647c8e.png)

![image](https://user-images.githubusercontent.com/26364415/30163411-caf2dcb8-93d0-11e7-8828-97d38221eab5.png)

![image](https://user-images.githubusercontent.com/26364415/30163428-db6c1bf4-93d0-11e7-88e1-318b8db3e2bf.png)

# [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=h1) Report
> Merging [#17462](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=desc) into [master](https://codecov.io/gh/pandas-dev/pandas/commit/ee6185e2fb9461632949f3ba52a28b37a1f7296e?src=pr&el=desc) will **decrease** coverage by `0.01%`.
> The diff coverage is `n/a`.

[![Impacted file tree graph](https://codecov.io/gh/pandas-dev/pandas/pull/17462/graphs/tree.svg?width=650&token=eZ4WkYLtcO&height=150&src=pr)](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master   #17462      +/-   ##
==========================================
- Coverage   91.16%   91.14%   -0.02%     
==========================================
  Files         163      163              
  Lines       49590    49590              
==========================================
- Hits        45209    45200       -9     
- Misses       4381     4390       +9
```

| Flag | Coverage Δ | |
|---|---|---|
| #multiple | `88.93% <ø> (ø)` | :arrow_up: |
| #single | `40.25% <ø> (-0.07%)` | :arrow_down: |

| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/io/gbq.py](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=tree#diff-cGFuZGFzL2lvL2dicS5weQ==) | `25% <0%> (-58.34%)` | :arrow_down: |
| [pandas/core/frame.py](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvZnJhbWUucHk=) | `97.72% <0%> (-0.1%)` | :arrow_down: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=footer). Last update [ee6185e...6212b79](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).

# [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=h1) Report
> Merging [#17462](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=desc) into [master](https://codecov.io/gh/pandas-dev/pandas/commit/6da85b30d989855fe2a1f5d1323189f0fc639e60?src=pr&el=desc) will **decrease** coverage by `0.01%`.
> The diff coverage is `n/a`.

[![Impacted file tree graph](https://codecov.io/gh/pandas-dev/pandas/pull/17462/graphs/tree.svg?src=pr&width=650&token=eZ4WkYLtcO&height=150)](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master   #17462      +/-   ##
==========================================
- Coverage   91.26%   91.24%   -0.02%     
==========================================
  Files         163      163              
  Lines       49806    49806              
==========================================
- Hits        45455    45446       -9     
- Misses       4351     4360       +9
```

| Flag | Coverage Δ | |
|---|---|---|
| #multiple | `89.04% <ø> (ø)` | :arrow_up: |
| #single | `40.3% <ø> (-0.07%)` | :arrow_down: |

| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/io/gbq.py](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=tree#diff-cGFuZGFzL2lvL2dicS5weQ==) | `25% <0%> (-58.34%)` | :arrow_down: |
| [pandas/core/frame.py](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvZnJhbWUucHk=) | `97.73% <0%> (-0.1%)` | :arrow_down: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=footer). Last update [6da85b3...2fec328](https://codecov.io/gh/pandas-dev/pandas/pull/17462?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).

I couldn't find a suitable page where the built-in styles are demonstarted. But it's easy enough to do yourself, so I just deleted the examples.
lgtm. @TomAugspurger 
We can use whatever version of matplotlib we want to built the docs, and I suppose we will typically use the latest. Given that, we can actually also use the new improved default matplotlib 2.0 style, instead of taking a custom one. 
My personal preference would be to just use the default matplotlib style now it has improved.
Language changes from @jorisvandenbossche implenented.
MPL 2 isn't bad but still seaborn is nicer looking.
any objections to this. lgtm.
I propose just merging this in. If anyone got an different view point, it's easy to make a new pull request.
Time for a poll!

1. ggplot (current)
2. seaborn (this PR)
3. matplotlib 2.0

Voting closes in 48 hours ;)

---

I vote for matplotlib 2.0 > seaborn > ggplot (3 > 2 > 1)

Preferential voting n case of a tie  🥇 

2 > 3 > 1

FWIW I think the current is ggplot, and this PR is proposing to use seaborn

2 > 3 > 1.
3 > 2 > 1
Any other votes ?
can someone post a comparison on 1, 2, 3 (for a single plot) here.
First example from the docs:

```
In [2]: ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))

In [3]: ts = ts.cumsum()

In [4]: ts.plot()
Out[4]: <matplotlib.axes._subplots.AxesSubplot at 0x1359f45f8>
```

```
In [11]: for style in ['ggplot', 'seaborn', 'default' ]:
    ...:     with plt.style.context(style):
    ...:         fig, ax = plt.subplots()
    ...:         ts.plot(ax=ax)
    ...:         fig.savefig("test_{}.png".format(style))
```

![test_ggplot](https://user-images.githubusercontent.com/1020496/30772251-3060a4de-a058-11e7-9cdb-434db5934f9a.png)
![test_seaborn](https://user-images.githubusercontent.com/1020496/30772249-305c52da-a058-11e7-9305-243f16114c8d.png)
![test_default](https://user-images.githubusercontent.com/1020496/30772250-30606b54-a058-11e7-919c-192dddebfab5.png)



BTW, the reason I vote for 3 (matplotlib default) is not because I find it the nicest style (in that case I would actually vote for ggplot I think), but because I think it is good enough and it is the best option for our docs. When people run examples from the docs, they will most likely see the default style, and by using the default style in our docs, it will most likely match with what they see.
ok i can be on board with

3 > 2 > 1
ok, I've changed it, so the plot style is not, which means default style for mpl > 2. The line is commented out rather than deleted, so its easy to experiment with different styles by doing find/replace.
@topper-123 Merged! 
As a follow-up, it would be good to check the dev docs if everything is looking more or less decent (once it is built, you should see the changes here: http://pandas-docs.github.io/pandas-docs-travis/visualization.html)