组成图

import numpy as np
import pandas  as pd
import matplotlib.pyplot as plt
import matplotlib as mpl
import seaborn as sns
import warnings;warnings.filterwarnings(action='once')
%%cmd
pip install pywaffle
from pywaffle import Waffle
data = {'Democtatic':48,'Republican':46,'Libertarian':3}
fig = plt.figure(figsize=(8,3),
                 FigureClass=Waffle, #画布类型
                 rows=5,
                 icons = 'child',
                 icon_size = 20,
                 values=data,
                 colors=("#232066","#983d3d","#dcb732"),
                 legend={'loc':'upper right', #控制图例在的位置,左上角,左下角,右上角,右下角
                        'bbox_to_anchor':(1.5,1)}#当存在这个元组是,图例的位置是相对于这个点来定位的
)
df = pd.read_csv("C:/Users/GYX/Desktop/mpg_ggplot2.csv")
df.groupby("class").size().reset_index()
df_class = df.groupby("class").size().reset_index(name="counts")
n_categories = df_class.shape[0]
#获取颜色
colors = [plt.cm.inferno_r(i/float(n_categories)) for i in range (n_categories)]
#plt.cm.inferno_r()函数中输入任意一个小数,几个可到邮给颜色
cla = [n[1] for n in df_class[["class","counts"]].itertuples()]
df = pd.read_csv("C:/Users/GYX/Desktop/mpg_ggplot2.csv")
#按车辆类型
df_class = df.groupby('class').size().reset_index(name='class_counts')
n_categories = df_class.shape[0]
#colors_class = [plt.cm.Set3(i/float(n_categories)) for i in range(n_categories)]
colors_class = [plt.cm.nipy_spectral(i/float(n_categories)) for i in range(n_categories)] ## plt.cm.nipy_spectral()里的颜色都比较深
label_class = [n[1] for n in df_class[['class','class_counts']].itertuples()]

#按气缸数

df_cyl = df.groupby('cyl').size().reset_index(name='cyl_counts')
n_categories = df_cyl.shape[0]
#colors_cyl = [plt.cm.Spectral(i/float(n_categories)) for i in range(n_categories)]
colors_cyl = [plt.cm.nipy_spectral(i/float(n_categories)) for i in range(n_categories)]
label_cyl = [n[1] for n in df_cyl[['cyl','cyl_counts']].itertuples()]
fig = plt.figure(
   FigureClass = Waffle,#绘制华夫饼
    plots={ #绘制多个图像
        '211': #3 表示3行,1 表示1列, 1 表示这是第一个
        {
            'values':df_class['class_counts'],#数据集
            'labels':label_class,
            'legend':{'loc':'upper left','bbox_to_anchor':(1.05,1),'fontsize':14,'title':'class'},
            'colors':colors_class,
            'title':{'label':"#vehicles by class",'loc':'center','fontsize':18}
        },
        '212':
        {
           'values':df_cyl['cyl_counts'],
            'labels':label_cyl,
            'legend':{'loc':'upper left','bbox_to_anchor':(1.05,1),'fontsize':14,'title':'cyl'},#这里的title是图例的title
            'colors':colors_cyl,
             'title':{'label':"#vehicles by cyl",'loc':'center','fontsize':18}
        }, 
    },
    rows = 6,
    figsize = (16,14),
    icons = 'car',
    icon_size=25,
)                          

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值