利用matplotlib对数据提取分析、可视化

目录

项目描述:

本篇需要的部分数据展示:

饼图:

 效果图:

  代码部分:

热力图:

数据集:

效果图:

代码部分:


项目描述:

1、主要使用Matplotlib库(python)和echarts实现数据的提取,以及数据分析 2、利用不同的图表来显示数据分析结果(可视化)

本篇需要的部分数据展示:

饼图:

 数据集:(共30条数据)

 

 效果图:

               

 

  代码部分:

import pandas as pd
import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
df = pd.read_csv("medals_total.csv")
values = df['Gold'].values
Country = df['Country Code'].values
plt.figure(figsize=(11, 6.5))  # 指定figure的宽和高,单位为英寸
plt.pie(values,
        labels=Country,
        shadow=True,  # 是否显示阴影
        colors=plt.cm.get_cmap('Set3')(range(12)),  # 使用matplotlib自带颜色
        pctdistance=0.8,  # 百分比标签与圆心的距离
        startangle=90,  # 饼图的开始角度,默认为0度
        autopct='%0.1f%%',  # 格式化输出百分比
        labeldistance=1.05,  # labels与圈边界的距离,默认为1.1
        )
plt.axis('equal')  # 设置为标准圆形
plt.legend(loc=3)  # 1,2,3,4从右下角顺时针旋转
plt.title('北京冬奥会金牌占比(共计109枚)')
plt.show()

热力图:

数据集:

效果图:

 

 

代码部分:


import numpy as np
import pandas as pd
from pandas import Series , DataFrame
import matplotlib.pyplot as plt
import matplotlib
%matplotlib inline
import seaborn as sns
rank = sns.load_dataset('qs-world-university-rankings-2017-to-2022-V2',data_home='D:')


X = rank.iloc[:,[0,1,3]]
X = X.loc[(X['university']=='Massachusetts Institute of Technology (MIT) ')|(X['university']=='Stanford University')|(X['university']=='Harvard University')|(X['university']=='University of Cambridge')|(X['university']=='California Institute of Technology (Caltech)')|(X['university']=='University of Oxford')]


rank = X.pivot(index='university',columns='year',values='score')# 对数据表进行重塑 index是重塑的新表的索引名称是什么,columns是重塑的新表的列名称,values是值
print(rank)

plt.figure(figsize=(15, 8))
sns.heatmap(rank,annot=True,fmt='f')#热力图,annot是在热力图上显示数值,fmt以浮点数显示数值

#折线图
rank = X.pivot(index='year',columns='university',values='score')
rank.plot(figsize = (10,6))#折线图显示
plt.show()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值