Exercises rating:

★☆☆ - You should be able to do it based on Python knowledge plus the text.

★★☆ - You will need to do extra thinking and some extra reading/searching.

★★★ - The answer is difficult to find by a simple search, requires you to do a considerable amount of extra work by yourself (feel free to ignore these exercises if you're short on time).

Let's first import and configure `matplotlib`

with sensible defaults:

In [ ]:

```
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits import mplot3d
%matplotlib inline
```

Create six plots in the same figure,
using a two column and three column configuration.
Plot `np.sin(x)`

and `np.cos(x)`

or any custom function in these plots.

Please do the same exercise for the MATLAB (`plt`

)
interface and for the Pythonic (`ax`

) interface.

In [ ]:

```
```

In [ ]:

```
```

Create four plots in the same figure, for *any* four **custom functions** $f()$.
Your $x$ should have at least 10000 samples.
The plots should be correctly labeled and have the appropriate limits for easy viewing.

Please do the same exercise for the MATLAB (`plt`

)
interface and for the Pythonic (`ax`

) interface

In [ ]:

```
```

In [ ]:

```
```

Using the digits dataset from `sklearn`

,
plot four dimensions at random, in the same manner we did for the iris dataset.

In [ ]:

```
from sklearn.datasets import load_digits
digits = load_digits()
print(digits['DESCR'])
```

In [ ]:

```
```

Plot the typical saddle function:

$$ z = x^2 - y^2 $$in a three dimensional plot.

In [ ]:

```
```

Using the following example data,
please use `fill_between`

to fill regions between these lines in different combinations.
Fill between `y1`

and `y2`

, between `y2`

and `y3`

, and between `y1`

and `y3`

.
For each area use a different color and use a good alpha (by trial and errors)
to make all areas visible.

In [ ]:

```
x = np.linspace(0, 3, 200)
y1 = x ** 2 + 3
y2 = np.exp(x) + 2
y3 = np.cos(x)
```

In [ ]:

```
```

Using `np.random.normal`

with different centers and std,
please plot (on the same plot),
10 different distributions.
Each distribution should have at least 2048 samples and you should use 100 bins for that.
(Make it look appealing visually: a good choice is to select a small range of centres
and a small range of standard deviations, and use a low `alpha=`

parameter.)

In [ ]:

```
```