使用pie,添加表格添加图例的方法精准调整在画布的位置

# matplotlib中文网 https://www.matplotlib.org

# 需求一: 图例用4列展示
# 需求二: 表格填充你喜欢的任意颜色
# 需求三: 调整图例和表格位置,如运行效果图所示(不要求完全一致,但应做到相似度8成以上)。
# 提示:不建议使用pycharm来做实验(超出绘图区域的范围会看不到,除非你调整窗口视野),最好使用jupyter notebook来做实验

导入模块

import matplotlib.pyplot as plt
#设置中文属性
plt.rcParams['font.sans-serif'] = ['SimHei'] 
plt.rcParams['axes.unicode_minus'] = False 

通过pie中的各项属性绘制饼图


kinds = ['面粉', '全麦粉', '酵母', '苹果酱', '鸡蛋', '黄油', '盐', '白糖']
weight = [250, 150, 4, 250, 50, 30, 4, 20]
plt.pie(weight, autopct='%3.1f%%')

kinds,weight都是列表(list)用于装储数据

autopct:表示控制扇形或楔形的数值显示的字符串,可通过格式字符串指定小数点后的位数
  

添加图例(通过bbox_to_anchor精细调整图例位置)

plt.legend(kinds, loc='upper right', bbox_to_anchor=[2.35,0.85],ncol=4)  

使用pyplot模块的legend()函数添加图例

bbox_to_anchor参数(精细)用于控制图例的布局,bbox_to_anchor=[控制水平(值大偏右),控制垂直(值大偏上)]

loc参数(粗略)控制图例在图表的位置

  位置编码                                                 位置字符串                                        说明

     0                                                                best                                             自适应

     1                                                             upper right                                       右上方         

     2                                                             upper left                                         左上方       

     3                                                              lower left                                         左下方      

     4                                                             lower right                                        右下方               

     5                                                                right                                                右方               

     6                                                             center left                                          中心偏左              

     7                                                            center right                                         中心偏右              

     8                                                            lower center                                       中心偏下               

     9                                                           upper center                                       中心偏上         

    10                                                              center                                               居中                 

ncol参数表示图例的列数,在此中设置列数为4

添加表格(通过bbox精细调整表格位置和大小)

table = plt.table(cellText=[weight], cellLoc='center', rowLabels=['重量(g)'],
                  colLabels=kinds,loc='left',bbox=[1.2,0.35,1,0.25])
#通过遍历的方法使每个单元格的背景颜色设置为粉色
for cell in table.properties()['children']:  
    cell.set_facecolor('pink')

 使用pyplot模块的table()函数添加表格

cellText : 表示表格单元格中的数据,是一个二维列表

cellLoc :表示单元格文本的对齐方式,支持'left'、'right'、'center' 三种取值,默认值为'right' 

rowLabels : 表示行标题的文本

colLabels : 表示列标题的文本

bbox=[边界框左上角的 x 坐标,边界框左上角的 y 坐标,边界框右下角的 x 坐标,边界框右下角的 y 坐标]  

展示图片     

plt.show()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值