Matplotlib学习---用matplotlib画热图(heatmap)
这里利用Nathan Yau所著的《鲜活的数据:数据可视化指南》一书中的数据,学习画图。
数据地址:http://datasets.flowingdata.com/ppg2008.csv
首先查看一下数据文件的前5行:
- Name G MIN PTS FGM FGA FGP FTM FTA FTP ... \
- 0 Dwyane Wade 79 38.6 30.2 10.8 22.0 0.491 7.5 9.8 0.765 ...
- 1 LeBron James 81 37.7 28.4 9.7 19.9 0.489 7.3 9.4 0.780 ...
- 2 Kobe Bryant 82 36.2 26.8 9.8 20.9 0.467 5.9 6.9 0.856 ...
- 3 Dirk Nowitzki 81 37.7 25.9 9.6 20.0 0.479 6.0 6.7 0.890 ...
- 4 Danny Granger 67 36.2 25.8 8.5 19.1 0.447 6.0 6.9 0.878 ...
- 3PA 3PP ORB DRB TRB AST STL BLK TO PF
- 0 3.5 0.317 1.1 3.9 5.0 7.5 2.2 1.3 3.4 2.3
- 1 4.7 0.344 1.3 6.3 7.6 7.2 1.7 1.1 3.0 1.7
- 2 4.1 0.351 1.1 4.1 5.2 4.9 1.5 0.5 2.6 2.3
- 3 2.1 0.359 1.1 7.3 8.4 2.4 0.8 0.8 1.9 2.2
- 4 6.7 0.404 0.7 4.4 5.1 2.7 1.0 1.4 2.5 3.1
这是NBA球员的比赛统计数据,比如说AST:(assists) 助攻次数,STL:(steals ) 抢断次数,等等。
让我们用这些统计数据来画一个热图,这样就可以大概知道哪个球员哪方面的得分比较高。
热图:ax.imshow(x,cmap=...)
代码如下:
- import numpy as np
- import pandas as pd
- from matplotlib import pyplot as plt
- NBA=pd.read_csv(r"http://datasets.flowingdata.com/ppg2008.csv")
- fig,ax=plt.subplots(figsize=(10,20))
- score=NBA.loc[:,"G":"PF"].values
- name=NBA.iloc[:,0]
- col=NBA.loc[:,"G":"PF"].columns
- im=ax.imshow(score,cmap='plasma_r') #用cmap设置配色方案
- ax.xaxis.set_ticks_position('top') #设置x轴刻度到上方
- ax.set_xticks(np.arange(len(col))) #设置x轴刻度
- ax.set_yticks(np.arange(len(name))) #设置y轴刻度
- ax.set_xticklabels(col) #设置x轴刻度标签
- ax.set_yticklabels(name) #设置y轴刻度标签
- fig.colorbar(im,pad=0.03) #设置颜色条
- ax.set_title("NBA Average Performance (Top 50 Players)",x=0.2,y=1.034,fontsize=16) #设置标题以及其位置和字体大小
- plt.show()
图像如下:
Matplotlib学习---用matplotlib画热图(heatmap)的更多相关文章
- Matplotlib学习---用seaborn画矩阵图(pair plot)
矩阵图非常有用,人们经常用它来查看多个变量之间的联系. 下面用著名的鸢尾花数据来画一个矩阵图.从sklearn导入鸢尾花数据,然后将其转换成pandas的DataFrame类型,最后用seaborn画 ...
- Matplotlib学习---用matplotlib画箱线图(boxplot)
箱线图通过数据的四分位数来展示数据的分布情况.例如:数据的中心位置,数据间的离散程度,是否有异常值等. 把数据从小到大进行排列并等分成四份,第一分位数(Q1),第二分位数(Q2)和第三分位数(Q3)分 ...
- Matplotlib学习---用matplotlib画直方图/密度图(histogram, density plot)
直方图用于展示数据的分布情况,x轴是一个连续变量,y轴是该变量的频次. 下面利用Nathan Yau所著的<鲜活的数据:数据可视化指南>一书中的数据,学习画图. 数据地址:http://d ...
- 用R包中heatmap画热图
一:导入R包及需要画热图的数据 library(pheatmap) data<- read.table("F:/R练习/R测试数据/heatmapdata.txt",head ...
- 用Excel制作热图(heatmap)的方法
http://jingyan.baidu.com/article/64d05a0240ec75de55f73bd8.html 利用Excel 2010及以上版本的"条件格式"--& ...
- Matplotlib学习---用matplotlib画折线图(line chart)
这里利用Jake Vanderplas所著的<Python数据科学手册>一书中的数据,学习画图. 数据地址:https://raw.githubusercontent.com/jakevd ...
- Matplotlib学习---用matplotlib画雷达图(radar chart)
雷达图常用于对多项指标的全面分析.例如:HR想要比较两个应聘者的综合素质,用雷达图分别画出来,就可以进行直观的比较. 用Matplotlib画雷达图需要使用极坐标体系,可点击此链接,查看对极坐标体系的 ...
- Matplotlib学习---用matplotlib画误差线(errorbar)
误差线用于显示数据的不确定程度,误差一般使用标准差(Standard Deviation)或标准误差(Standard Error). 标准差(SD):是方差的算术平方根.如果是总体标准差,那么用σ表 ...
- R绘图(2): 离散/分类变量如何画热图/方块图
相信很多人都看到过上面这种方块图,有点像"华夫饼图"的升级版,也有点像"热图"的离散版.我在一些临床多组学的文章里面看到过好几次这种图,用它来展示病人的临床信息 ...
随机推荐
- 微信小程序web-view页面安卓下显示空白的解决办法!!!
web-view页面在你向地址拼接参数展示页面时,在安卓上有时会显示空白 解决方案: A: 普通不需要参数的话可以直接把地址写在src里,不要去在onLoad里获取你的全局变量后再赋值. B: 如果需 ...
- 617. Merge Two Binary Trees(Easy)
Given two binary trees and imagine that when you put one of them to cover the other, some nodes of t ...
- H5 68-伪元素选择器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- c++入门之 再话类
对于类,其结构并不难,但要理解其设计思想也并不容易,在此,我们可以通过下面的代码进一步理解和使用类: # ifndef VECTOR_H_ # define VECTOR_H_ # include & ...
- iOS- 利用AFNetworking(AFN) - 实现文件断点下载
https://www.cnblogs.com/qingche/p/3500746.html 1. 定义一个全局的AFHttpClient:包含有 1> baseURL 2> 请求 3&g ...
- 关于 pip安装的可能错误的排除
今天安装selenium总是报错(下为错误信息) C:\Python27\Scripts>pip install seleniumCollecting seleniumC:\Python27\l ...
- Go Web --- 创建一个Article的增删改查
掌握数据的增删改查之后,就可以做一些小demo,巩固一下基础,让语法更加熟练,所以下面是按照Go web编程里面的文章管理操作,写的一个代码: package main import ( " ...
- MySQL中有关NULL的计算
mysql> select NULL=NULL; #判断两个NULL是否相等,结果不是1也不是0 +-----------+ | NULL=NULL | +-----------+ | NULL ...
- Laravel自带SMTP邮件组件实现发送邮件(QQ、163、企业邮箱都可)
Laravel自带SMTP邮件组件实现发送邮件(QQ.163.企业邮箱都可) laravel自带SMTP邮件配置和遇到的坑 laravel自带SwiftMailer库,集成了多种邮件API,可 ...
- 转:MD5(Message-Digest Algorithm 一种哈希算法)
什么是MD5算法 MD5讯息摘要演算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码杂凑函数,可以产生出一个128位元(16位元组)的散列值(hash val ...