下边以颜色地图rainbow为例(彩虹图),写出以下代码,并展示各种颜色样式下的图像效果。
import pandas as pd import numpy as np import matplotlib.pyplot as plt from matplotlib import cm # 字体使用楷体 plt.rcParams['font.sans-serif'] = ['STKAITI'] plt.rcParams['axes.unicode_minus'] = False # 准备数据 shapes = ['安徽省', '云南省', '福建省', '河南省', '辽宁省', '重庆', '湖南省', '四川省', '北京', '上海', '广西壮族自治区', '河北省', '浙江省', '江苏省', '湖北省', '山东省', '广东省'] values = [842, 866, 1187, 1405, 1495, 1620, 1717, 2313, 2378, 3070, 4332, 5841, 6482, 7785, 9358, 9818, 20254] s = pd.Series(values, index=shapes) labels = s.index sizes = s.values fig, ax = plt.subplots(figsize=(8, 8), facecolor='#cc00ff') # rainbow # 这里的len(sizes)是选择的颜色的个数,也是绘制饼图的数据个数, # 此处参数通常写为np.arange(len(sizes))/len(sizes)形式,不用纠结太多关于其用法。 colors = cm.rainbow(np.arange(len(sizes))/len(sizes)) patches, texts, autotexts = ax.pie(sizes, labels=labels, autopct='%1.0f%%', startangle=180, colors=colors, pctdistance=0.8, textprops={'fontsize': 15, 'color': '#8B1A1A'}, ) ax.set_title('部分地区某指标占比图', loc='center', fontsize=25, color='blue') plt.show()
图像效果如下:
除此之外,也可以调用cm模块的get_cmap()方法来完成。可以对该方法有所了解(小啾觉得上边展示的方法是更为方便的)。
以Paired颜色地图 为例:
以颜色地图autumn为例:
以颜色地图gray为例:
以颜色地图spring为例: