绘图库Matplotlib | Python技能树征题

题目:将下面 position.json里的数据,用Matplotlib模块进行数据处理,其中职位名称要用扇形图来显示,工作地点、工资则用柱形图显示,并将最终的结果图形保存为一张图片。

position.json :

[
  [
    {
      "职位名称": "Python程序开发师",
      "公司名": "爱奇艺(www.iqiyi.com)",
      "工作地点": "成都-高新区",
      "薪资": "1.3-1.6万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "武汉佰钧成技术有限责任公司",
      "工作地点": "深圳-龙华区",
      "薪资": "2.5-3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "广州新华时代数据系统有限公司",
      "工作地点": "上海",
      "薪资": "0.8-1.6万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发/Odoo工程师",
      "公司名": "造源信息科技(上海)有限公司",
      "工作地点": "上海-杨浦区",
      "薪资": "1.1-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "中讯志远(武汉)科技有限公司",
      "工作地点": "杭州-滨江区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "深圳市博悦科创科技有限公司",
      "工作地点": "深圳-福田区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python研发工程师",
      "公司名": "杭州岱名科技有限公司",
      "工作地点": "杭州-萧山区",
      "薪资": "1.5-3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python高级开发工程师",
      "公司名": "武汉小安科技有限公司",
      "工作地点": "武汉-洪山区",
      "薪资": "1.2-2.4万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python工程师",
      "公司名": "江苏博思堂房地产综合服务股份有限公司",
      "工作地点": "苏州-吴中区",
      "薪资": "0.6-1万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "北京正芯合创微电子技术有限公司",
      "工作地点": "北京-朝阳区",
      "薪资": "1.5-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python高级开发工程师",
      "公司名": "北京海天起点技术服务股份有限公司",
      "工作地点": "长沙-天心区",
      "薪资": "1.2-2.4万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python高级开发工程师",
      "公司名": "小i机器人",
      "工作地点": "上海",
      "薪资": "1.5-3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "浪潮通软公司",
      "工作地点": "深圳-南山区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "上海悟景信息科技有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "2-2.7万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python助理工程师",
      "公司名": "深圳思凯测试技术有限公司",
      "工作地点": "深圳-光明区",
      "薪资": "0.7-1万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "博彦科技广州有限公司",
      "工作地点": "上海-嘉定区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python开发助理",
      "公司名": "深圳市秉高科技有限公司",
      "工作地点": "深圳-宝安区",
      "薪资": "0.8-1万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "奔讯电子科技(北京)有限公司",
      "工作地点": "北京-朝阳区",
      "薪资": "1.2-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "远江盛邦(北京)网络安全科技股份有限公司",
      "工作地点": "陕西省",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python(odoo)开发工程师",
      "公司名": "成都艾森威科技有限公司",
      "工作地点": "成都-高新区",
      "薪资": "0.6-1.2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python中级开发工程师",
      "公司名": "福建法意科技有限公司",
      "工作地点": "福州-闽侯县",
      "薪资": "0.8-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python developer",
      "公司名": "欧睿恒(大连)信息技术有限公司",
      "工作地点": "大连",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "上海清鹤科技股份有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "1.2-1.8万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python后端工程师",
      "公司名": "苏州盈数智能科技有限公司",
      "工作地点": "苏州-相城区",
      "薪资": "0.8-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python工程师(J10623)",
      "公司名": "无锡先导智能装备股份有限公司",
      "工作地点": "无锡-无锡新区",
      "薪资": "1.1-2.2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python爬虫工程师",
      "公司名": "丹东同盛科技有限公司",
      "工作地点": "南昌-东湖区",
      "薪资": "0.5-1万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python 高级软件工程师",
      "公司名": "上海国微思尔芯技术股份有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "20-40万/年",
      "发布时间": "09-09"
    },
    {
      "职位名称": "高级Python开发工程师(上海)",
      "公司名": "上海华讯网络系统有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "1.5-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "千巡科技(深圳)有限公司",
      "工作地点": "深圳-宝安区",
      "薪资": "1.5-3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师(应届生)",
      "公司名": "上海德程数据技术有限公司",
      "工作地点": "上海-静安区",
      "薪资": "6-8千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python高级开发工程师",
      "公司名": "武汉海星通技术股份有限公司",
      "工作地点": "武汉-江汉区",
      "薪资": "0.9-1.3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "湖南大唐先一科技有限公司",
      "工作地点": "长沙",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "上海弘矽半导体有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "1.5-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python开发助理",
      "公司名": "成都匠翎信息技术有限公司",
      "工作地点": "成都-高新区",
      "薪资": "4-6千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python爬虫工程师",
      "公司名": "广州时时美电子商务有限公司",
      "工作地点": "广州-荔湾区",
      "薪资": "0.8-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python后端开发工程师",
      "公司名": "珠海轼域网络科技有限公司",
      "工作地点": "珠海-香洲区",
      "薪资": "1.8-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "时代云英(深圳)科技有限公司",
      "工作地点": "深圳-南山区",
      "薪资": "1.5-3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师/软件工程师",
      "公司名": "杭州研一智控科技有限公司",
      "工作地点": "杭州-钱塘区",
      "薪资": "1.2-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python后端开发工程师",
      "公司名": "固安捷(中国)工业品销售有限责任公司",
      "工作地点": "上海-徐汇区",
      "薪资": "1.5-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python工程师",
      "公司名": "上海西井信息科技有限公司",
      "工作地点": "上海-长宁区",
      "薪资": "1.5-3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python爬虫高级工程师",
      "公司名": "深圳市华运国际物流有限公司",
      "工作地点": "深圳-罗湖区",
      "薪资": "1.8-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python web开发工程师",
      "公司名": "上海南洋万邦软件技术有限公司",
      "工作地点": "上海-徐汇区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python工程师",
      "公司名": "浪潮软件集团",
      "工作地点": "济南-高新区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "武汉中畜智联科技有限公司",
      "工作地点": "武汉-蔡甸区",
      "薪资": "0.7-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python工程师",
      "公司名": "武汉国贸通大数据有限公司",
      "工作地点": "武汉-洪山区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python高级开发工程师[J832045]",
      "公司名": "上海美市科技有限公司",
      "工作地点": "武汉-洪山区",
      "薪资": "1.2-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "信必优(深圳)信息技术有限公司",
      "工作地点": "深圳-南山区",
      "薪资": "1.3-1.6万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "上海火线资产管理有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "1.2-1.8万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "C++ / Python开发工程师",
      "公司名": "江苏科学梦创展科技有限公司",
      "工作地点": "淮安",
      "薪资": "0.7-1.2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "高级python开发",
      "公司名": "宁波创母体网络科技有限公司",
      "工作地点": "宁波",
      "薪资": "0.9-1.6万/月",
      "发布时间": "09-09"
    }
  ],
  [
    {
      "职位名称": "Python文档开发-南京-双休13薪+",
      "公司名": "江苏润和软件股份有限公司",
      "工作地点": "南京-雨花台区",
      "薪资": "1.2-2.4万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python助理工程师/双休",
      "公司名": "深圳市富成喜科技有限公司",
      "工作地点": "深圳-宝安区",
      "薪资": "0.8-1万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "上海现代通用识别技术有限公司",
      "工作地点": "上海",
      "薪资": "1.1-1.3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "深圳华会科技有限公司",
      "工作地点": "深圳-龙华区",
      "薪资": "0.8-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "初级Python后端开发工程师",
      "公司名": "上海楷领科技有限公司",
      "工作地点": "西安-雁塔区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发",
      "公司名": "广州市卓为信息技术有限公司",
      "工作地点": "广州-天河区",
      "薪资": "1.1-1.7万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "致同会计师事务所深圳分所",
      "工作地点": "深圳",
      "薪资": "1-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python爬虫工程师",
      "公司名": "深圳市洛菲纳电子商务有限公司",
      "工作地点": "深圳-宝安区",
      "薪资": "15-30万/年",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "北京汉克时代科技有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python开发",
      "公司名": "深圳市网新新思软件有限公司",
      "工作地点": "上海-徐汇区",
      "薪资": "1-1.8万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "北京华美汉盛信息技术有限公司",
      "工作地点": "佛山-高明区",
      "薪资": "0.6-1万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "深圳麦亚信科技股份有限公司上海分公司",
      "工作地点": "上海-徐汇区",
      "薪资": "1.3-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "米德高斯大数据科技(上海)股份有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "1.2-1.6万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "上海华铭智能终端设备股份有限公司",
      "工作地点": "上海",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "北京宜通华瑞科技有限公司",
      "工作地点": "南昌-红谷滩新区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "易宝软件(东莞)有限公司",
      "工作地点": "深圳",
      "薪资": "2-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "东莞市找大状互联网技术有限公司",
      "工作地点": "东莞",
      "薪资": "1.5-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python开发工程师",
      "公司名": "杭州泛利科技有限公司",
      "工作地点": "杭州",
      "薪资": "6-8千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "科芃智能科技(苏州)有限公司",
      "工作地点": "苏州-相城区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python开发工程师",
      "公司名": "浙江小果文化发展有限公司",
      "工作地点": "嘉兴",
      "薪资": "6-8千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "上海嘉强自动化技术有限公司",
      "工作地点": "上海-松江区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "南京数坤信息科技有限公司",
      "工作地点": "南京-鼓楼区",
      "薪资": "0.6-1万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python开发工程师",
      "公司名": "上海擎云物联网股份有限公司",
      "工作地点": "上海-闵行区",
      "薪资": "6-8千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "兆恒电脑科技(上海)有限公司广州分公司",
      "工作地点": "上海-徐汇区",
      "薪资": "0.9-1.2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "“前程无忧”51job.com(上海)",
      "工作地点": "上海",
      "薪资": "0.8-1.2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "HitS事业部-Python软件开发工程师(J17585)",
      "公司名": "上海药明康德新药开发有限公司",
      "工作地点": "上海",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python工程师",
      "公司名": "北京万古恒信科技有限公司武汉分公司",
      "工作地点": "武汉-洪山区",
      "薪资": "0.9-1.6万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "成都云图睿视科技有限公司",
      "工作地点": "成都-郫都区",
      "薪资": "4-6千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "广州启宏文化发展有限公司",
      "工作地点": "广州-天河区",
      "薪资": "5-7千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "软件工程师Python",
      "公司名": "牧今科技(广州)有限责任公司",
      "工作地点": "广州-海珠区",
      "薪资": "2-3万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python爬虫工程师",
      "公司名": "深圳华秋电子有限公司",
      "工作地点": "深圳-福田区",
      "薪资": "1.5-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "北京金道天成信息系统服务有限公司",
      "工作地点": "西安-雁塔区",
      "薪资": "1-1.8万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "深圳市微智体技术有限公司",
      "工作地点": "深圳-龙华区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师-YE",
      "公司名": "深圳达普信科技有限公司",
      "工作地点": "深圳-龙华区",
      "薪资": "1.8-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python后端开发工程师",
      "公司名": "深圳市艾珆文化有限公司",
      "工作地点": "深圳-福田区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "python后端开发工程师",
      "公司名": "上海之江生物科技股份有限公司",
      "工作地点": "上海",
      "薪资": "1.5-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "广东盛迪嘉集团有限公司",
      "工作地点": "深圳-南山区",
      "薪资": "1.5-2.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python软件开发工程师",
      "公司名": "苏州威思测电子科技有限公司",
      "工作地点": "昆山",
      "薪资": "1-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发实习生",
      "公司名": "西安无限天际网络科技有限公司",
      "工作地点": "西安-碑林区",
      "薪资": "4.5-6千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发实习生",
      "公司名": "西安未来云信息科技有限公司",
      "工作地点": "西安-碑林区",
      "薪资": "4.5-6千/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "郴州芝麻开门物流有限公司",
      "工作地点": "郴州",
      "薪资": "0.5-1万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "深圳市东荣物流有限公司",
      "工作地点": "深圳-福田区",
      "薪资": "1.5-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "武汉天际航信息科技股份有限公司",
      "工作地点": "武汉",
      "薪资": "0.7-1.2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python/Odoo开发工程师",
      "公司名": "Dauphin Pastoureau SAS",
      "工作地点": "上海-静安区",
      "薪资": "0.9-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师+天府三街",
      "公司名": "北京中富金石咨询有限公司四川分公司",
      "工作地点": "成都-高新区",
      "薪资": "1-1.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "上海云逐信息技术有限公司",
      "工作地点": "上海-浦东新区",
      "薪资": "1.5-2万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python架构师01 (MJ000029)",
      "公司名": "上海联恩商钥互联网科技股份有限公司",
      "工作地点": "上海-徐汇区",
      "薪资": "2-3.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "高级 Python 程序员",
      "公司名": "广东堡塔安全技术有限公司",
      "工作地点": "东莞-南城区",
      "薪资": "2.5-3.5万/月",
      "发布时间": "09-09"
    },
    {
      "职位名称": "Python开发工程师",
      "公司名": "内蒙古西贝餐饮集团有限公司",
      "工作地点": "北京-石景山区",
      "薪资": "20-30万/年",
      "发布时间": "09-09"
    },
    {
      "职位名称": "高级Python / 爬虫开发工程师",
      "公司名": "上海本原网络科技有限公司",
      "工作地点": "上海-闵行区",
      "薪资": "2-2.5万/月",
      "发布时间": "09-09"
    }
  ]
]

答案:

# -*- coding:utf-8 -*-
from matplotlib import pyplot as plt
import json
import re


def get_job_data():
    # 读取json文件拿到职位列表数据
    job_list = []
    temp_job_list = json.load(open("./position.json", "r", encoding='utf-8'))
    # 定义几个列表存放数据
    # 薪资
    money_list = []
    # 工作城市
    place_list = []
    # 职位名称
    position_list = []
    # 将所有字典存入列表
    # [[{},{}],[{},{}]]
    # [{},{},{},{}]
    for temp_job in temp_job_list:
        for temp_element in temp_job:
            job_list.append(temp_element)
    for job in job_list:
        temp_salary = job.get("薪资")
        temp_money = re.findall(r"-(0\.\d+|\d+\.\d+|\d+)", temp_salary)
        if len(temp_money) > 0:
            money = float(temp_money[0])
            money_list.append(money)
        else:
            money_list.append(0)
        temp_place = job.get("工作地点")
        # 工作城市
        palce = re.findall(r"(.+)-", temp_place)
        if len(palce) > 0:
            place_list.append(palce[0])
        else:
            place_list.append(job.get("工作地点"))
        position = job.get("职位名称")
        position_list.append(position)
    return position_list, place_list, money_list


def paint_pie():
    position_data, place_data, money_data = get_job_data()
    # y_datas是楼盘的数据,渲染的是每一个分类有多少个数据
    count_1 = 0
    count_2 = 0
    count_3 = 0
    count_4 = 0

    for money in money_data:
        if money > 2:
            count_1 = count_1 + 1
        elif money > 1.5:
            count_2 = count_2 + 1
        elif money > 1:
            count_3 = count_3 + 1
        else:
            count_4 = count_4 + 1
    item_position = {}
    # [1,1,2,3,4]
    for position in position_data:
        # 计算列表中该元素的数量
        item_position[position] = position_data.count(position)
    # print(item_position)
    # 中文乱码
    plt.rcParams["font.sans-serif"] = ["Microsoft YaHei"]

    position_y_datas = []
    for element in item_position.keys():
        temp_y_datas = item_position.get(element)
        position_y_datas.append(temp_y_datas)

    position_x_datas = item_position.keys()
    x_position = [i for i in range(len(position_x_datas))]
    plt.subplot(2, 2, 1)
    plt.title("职位名称")
    plt.xlabel("职位")
    plt.ylabel("职位数目")
    plt.xticks(x_position, position_x_datas, rotation=90)
    plt.bar(x_position, position_y_datas)

    item_place = {}
    for place in place_data:
        item_place[place] = place_data.count(place)
    # print(item_place)

    place_y_datas = []
    for element in item_place.keys():
        temp_y_datas = item_place.get(element)
        place_y_datas.append(temp_y_datas)

    place_x_datas = item_place.keys()
    x_place = [i for i in range(len(place_x_datas))]
    plt.subplot(2, 2, 2)
    plt.title("工作地点")
    plt.xlabel("地区")
    plt.ylabel("岗位数目")
    plt.xticks(x_place, place_x_datas, rotation=90)
    plt.bar(x_place, place_y_datas)

    plt.subplot(2, 2, 4)
    plt.title("工资")
    plt.pie([count_1, count_2, count_3, count_4], explode=[0, 0, 0, 0.1],
            labels=["工资超过2万", "工资在1.5万到2万", "工资在1万到1.5万", "工资小于1万"],
            colors=['red', 'green', 'pink', 'blue'])
    # 放大窗口
    plt.gcf().set_size_inches(25, 20)
    plt.savefig("./1.png")
    plt.show()


if __name__ == '__main__':
    get_job_data()
    paint_pie()

运行结果:

绘图库Matplotlib | Python技能树征题_第1张图片

 

你可能感兴趣的:(Python,python,pycharm)