fantastic matplotlib第五回

1.理论树:第五回的内容主要包括样式和上色。样式部分包括了style选择和rc参数的设置。上色部分主要是颜色通道、颜色名称和cmp。

2.思考题:定义一个cmap,且做出发挥cmap作用的图。
答:这里我用了个十分简单的例子而已,cmap在这里主要是发挥分类的作用,标签解释我用text留在了右上角。因此这里我留下一个问题,cmap和l输出label怎么兼容?(达到循环写多类样本然后legend输出同样的效果)

from sklearn.datasets import load_iris
import pandas as pd
#数据准备,此处dataframe仅是为了后续循环索引而已。
data = load_iris()
x = pd.DataFrame(data.data, columns=data.feature_names)
y = data.target
x_list = ['sepal', 'petal']
#定义colormap
from matplotlib.colors import ListedColormap
cmap = ListedColormap(['red', 'blue', 'green'])

import matplotlib.pyplot as plt
%matplotlib inline
plt.style.use('ggplot')

fig = plt.figure(figsize=(16, 8))
axs = fig.subplots(1, 2)
fig.suptitle('iris data set', size=20)
for i in range(2):
    for j in range(3):
        axs[i].scatter(x.iloc[:, 2*i], x.iloc[:, 2*i+1], c=y, cmap=cmap)
        axs[i].set_title(x_list[i], fontsize=16)
        axs[i].set_xlabel(x.columns[2*i], fontsize=16)
        axs[i].set_ylabel(x.columns[2*i+1], fontsize=16)
plt.text(-8, 3, "'r'--Setosa, 'b'--Versicolor, 'g'--Virginica", fontsize=14);

浙ICP备19012682号