数据展示的利器 Matplotlib

浏览 550

课文

想想看,当你做完数据分析,想把你的结论告诉别人。通过文字太干白无力,灵活地运用图表就是一种最有力的方法。 在展示数据时,选择合适的图表也是需要注意的。一个合适的图表应该足够简单,并且能够突出想表达的内容主体。 Matplotlib 是一个用于在 Python 中绘制数据的图形库,他的优势在于 我们介绍一下几种常见的图表展示,更多的请同学查阅[官方案例](https://matplotlib.org/stable/gallery/index.html)。 matplotlib.pyplot是一个命令风格函数的集合,使matplotlib的机制更像 MATLAB。 ```python pip install matplotlib ``` ```python import matplotlib.pyplot as plt import numpy as np # 设置字体以显示中文 plt.rcParams["font.sans-serif"] = ["SimHei"] ``` ## 折线图 适合场景:显示数据的趋势变化。 我们展示的数据是 `2012-2018年全球电竞市场营收情况` , [数据来源](https://www.dydata.io/datastore/detail/1872278728143409152/)。 ```python # 2012-2018年全球电竞市场营收情况 data = { "2012": 90, "2013": 180, "2014": 140, "2015": 240, "2016": 350, "2017": 460, "2018": 600, } plt.title("2012-2018年全球电竞市场营收情况") plt.xlabel("职业") plt.ylabel("营收(百万美元)") plt.plot(data.keys(), data.values()) plt.show() ``` ![image](https://qiniu.3yya.com/9e647d249c952540f2bb0081526b1424/9e647d249c952540f2bb0081526b1424.png) ## 柱形图 柱状图是日常生活中特别常见的一种图表结构。 适合场景:表示一些数据的对比。 我们展示的数据是 `2020年央视《新闻联播》出现频次最高的职业` , [数据来源](https://www.dydata.io/datastore/detail/1966851096660021248/)。 ```python # 2020年央视《新闻联播》出现频次最高的职业 data = { "医护人员": 437, "警察": 420, "工人": 321, "医生": 254, "毕业生": 210, "海军": 180, "农民工": 150, "企业家": 115, "职工": 114, "解放军": 100, "空军": 91, "院士": 77, "务工人员": 76, "大学生": 72, "人民警察": 63, "武警": 62, "医师": 42, "陆军": 40, "法官": 34, "扶贫干部": 33, } # 设置图片宽高 plt.figure(figsize=(12, 6)) plt.title("2020年央视《新闻联播》出现频次最高的职业") plt.xlabel("职业") plt.ylabel("次数") plt.bar(data.keys(), data.values(), width=0.5) plt.show() ``` ![image](https://qiniu.3yya.com/a3cd97e46cdb47ee66cd0c62dcadb182/a3cd97e46cdb47ee66cd0c62dcadb182.png) ## 饼状图 ```python data = { "在读学生": 33.6, "企业白领": 30.0, "服务业人员": 12.3, "工人": 6.4, "个体户/自由职业": 5.5, "教师": 4.8, "其他": 3.3, "医生": 2.1, } # 设置背景色 plt.figure(facecolor='white') plt.title("截止2019年9月中国电竞用户职业分布占比情况") plt.pie(data.values(), labels=data.keys(), autopct='%1.1f%%') plt.show() ``` ![image](https://qiniu.3yya.com/6390e9ed0b238e25d034a50ab17f3e76/6390e9ed0b238e25d034a50ab17f3e76.png) ## 散点图 适应场景:在较多数据情况下,观察数据的分布情况。

评论

登录参与讨论

暂无评论

共 0 条
  • 1
前往
  • 1