介绍
seaborn和matplotlib一样,试图使一组定义明确的且困难的事情变得容易。
Seaborn的优势:
Seaborn最大的优势在于其绘图功能的多样性,它甚至允许我们只在一行代码中就绘制复杂的绘图!
在本教程中,我们使用三个库来制作漂亮的图表——Matplotlib、Seaborn和Pandas。如果你是Python的初学者,我建议你先熟悉Matplotlib和Pandas。
如果你严格遵循本教程,你可以使用这三个库制作出漂亮的图表,同时可以将我的代码用作将来任何可视化任务的模板。
让我们从著名的口袋妖怪数据集开始。在开始之前,我强烈建议你为每个图形编写自己的基础代码,并尝试使用图形。
你可以在Kaggle上找到Pokemon数据集,为了让你的学习更轻松,我缩短并清理了这个版本的数据集。
你可以在此处下载数据集:https://github.com/shelvi31/Seaborn-Experiments
帮助资料:https://python-graph-gallery.com/.
我们现在开始绘制图表:
首先导入必要的库:
#importing libraries
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
读取CSV文件
data = pd.read_csv(“Pokemon.csv”,encoding= ‘unicode_escape’)
通过 read_csv() 命令定义不同的编解码来避免utf8的编解码错误。
我们的数据看起来像这样…
data.head()
输出:
列的名称并没有清楚地简化其用途。在实际使用数据集之前了解它是很重要的。
以下是数据集的简化描述。
该数据集包括150个与神奇宝贝游戏有关的神奇宝贝(不是口袋妖怪卡片或口袋妖怪围棋)。
在这个数据集中,我们有150行和13列。
列说明:
#*ID*:每个口袋妖怪的ID
#Name:每个口袋妖怪的名字
#Type1:每个口袋妖怪都有一个类型,这决定了它攻击的弱点/抵抗力
#Type2:一些口袋妖怪是双重类型,有2个类型
#Total:所有统计数据的总和,关于口袋妖怪有多强的一般指南
#HP:生命值定义了口袋妖怪在晕倒前能承受的伤害
#Attack:普通攻击的基础修饰语(如刮痕,重击)
#Defense:抵抗普通攻击的基础伤害
#SP Atk,特殊攻击的基础修饰语(如火焰爆炸,气泡束)
#*SP Def*: 防御特殊攻击的基础伤害
#Speed:决定哪只口袋妖怪每轮先攻击
#Stage:Stage数
#Legendary:传奇的口袋妖怪是真的,不是假的
我已经重新命名了这些列名,以使我们的策划更有意义,使我们的思路更加清晰。虽然这是可选的,但我强烈建议你这样做,以消除任何可能的混乱。
data.rename(columns = {“#”:”No.”,”Type 1":”Pokemon_Type”,”Type 2":”PokemonType2",’Total’:’Sum of Attack’,”HP”:”Hit Poi