热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

04_seaborn基本使用

1.seaborn设置整体风格seaborn提供5中主题风格:darkgridwhitegriddarkwhiteticks主要通过set()和s

1.seaborn设置整体风格

seaborn提供5中主题风格:

  • darkgrid
  •  whitegrid
  •  dark
  •  white
  •  ticks

主要通过set()和set_style()两个函数对整体风格进行控制。

准备工作:

import seaborn as sns
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt

# 定义一个绘图函数
def sinplot(flip=1): x = np.linspace(0, 14, 100) for i in range(1, 7): plt.plot(x, np.sin(x + i*.5)*(7-i)*flip)

默认设置1

输入:

# 一般图形, 默认设置
# 效果同sns.set()

sinplot()

输出:

默认设置2

输入:

# 默认设置

sns.set()  # 使用seaborn的默认设置
sinplot()

输出:

 

设置风格为ticks

输入:

# 设置风格为ticks

# 可以直接通过参数名传参,也可以通过set_style()传参
# 效果同:set_style('ticks')

sns.set(style='ticks')
sinplot()

 

 输出:

设置为whitegrid

输入:

sns.set_style('whitegrid')
sinplot()

输出:

 

其他主题设置风格类似,可通过set()方式,也可以通过set_style( " " )的方式设置。

具体可使用print(help(sns.set))函数查看帮助文档。

2.seaborn设置细节风格

设置边框

输入:

# 边框设置

sinplot()
sns.despine()  # 去掉边框,默认去掉上边框和右边框

输出:

也可以通过参数名传参,来决定哪个边框不显示。

输入:

# 也可以通过参数名传参,决定哪个边框不显示

sinplot()
sns.despine(bottom=True, right=True)  # True代表不显示

 

输出:

设置子图风格

输入:

# 对子图设置不同风格

with sns.axes_style('darkgrid'):
    plt.subplot(211)  # 对第一个子图设置风格darkgrid
    sinplot()
    
plt.subplot(212)
sinplot(2)

# 通过关键字with,对不同子图设置风格

 

 输出:

设置内容

输入:

# 对图中内容进行设置,包括线条颜色,粗细和刻度等

sns.set_context("paper")  # 使用paper风格
plt.figure(figsize=(10, 6))
sinplot()

 

输出:

 字体、线宽设置

 输入:

# 设置字体大小,线宽等

sns.set_context("talk", font_scale=1.5, rc={'line.linewidth':2.5})  # 使用talk风格
plt.figure(figsize=(10, 6))
sinplot()

 

输出:

3.调色板的使用

 seaborn主要提供分类色板、颜色空间、连续色板和xkcd等操作,对图像颜色进行设置。

分类色板

 主要涉及以下函数:

  • color_palette() 能传入任何Matplotlib所支持的颜色
  • color_palette() 不传入参数则为默认颜色
  • set_palette() 设置所有图的颜色
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

sns.set(rc={'figure.figsize': (6, 6)})  # 设置画板大小

 

输入:

# 分类色板

current_palette = sns.color_palette() #默认是deep,深色风
sns.palplot(current_palette)
sns.palplot(sns.color_palette("muted")) #柔和风
sns.palplot(sns.color_palette("pastel",9)) #粉蜡笔风
sns.palplot(sns.color_palette("bright",10)) #明亮风
sns.palplot(sns.color_palette("dark",11)) #黑暗风
sns.palplot(sns.color_palette("colorblind",12)) # 色盲风

# 6个默认的颜色循环主题: deep, muted, pastel, bright, dark, colorblind

 

输出:

颜色空间

 颜色空间主要通过hls_palette()函数来控制颜色的色调、亮度和饱和

  • h-色调 hue
  • l-亮度 lightness
  • s-饱和 saturation

输入:

# hls_palette()函数对颜色进行设置

sns.palplot(sns.hls_palette(8,h=.8, l=.7, s=.9)) 
sns.palplot(sns.hls_palette(8,h=0.1, l=.3, s=.6))

#sns.hls_palette设置得到HLS的色彩空间中的颜色,颜色个数,
# h设置色调,
# l设置亮度,
# s设置饱和度,
# 取值范围均在(0,1)

 

输出:

 

输入:

# 设置成对的,相近颜色

sns.palplot(sns.color_palette("Paired",10))
# 按对分组,每一对之间属同一色系中的差异较大的两个颜色
# 对于对之间属于不同色系的颜色

 

输出:

xkcd颜色

 xkcd包含了一套针对随机RGB色的命名。产生了954个可以通过xdcd_rgb字典中调用的命名颜色。

输入:

# xkcd通过skcd_rgb设置颜色

plt.plot([0, 1], [3, 0], sns.xkcd_rgb["piss yellow"], lw=4)  
plt.plot([0, 1], [1, 1], sns.xkcd_rgb["cherry"], lw=3)
plt.plot([0, 1], [0, 3], sns.xkcd_rgb["robin egg blue"], lw=3)

# 通过颜色名字来调用颜色,
# 也可以通过颜色的16进制编码调用颜色
# lw : linewidth设置

 

输出:

输入:

# xkcd 通过颜色名称设置颜色

colors = ["windows blue", "amber", "greyish", "faded green", "dusty purple"]
sns.palplot(sns.xkcd_palette(colors))

 

输出:

连续色板

 色彩随数据变换,比如数据越来越重要则颜色越来越深。

输入:

# 设置渐变色

sns.palplot(sns.color_palette("Blues")) #设置某种颜色的一系列渐变色
sns.palplot(sns.color_palette("Blues_r",8))  # blues_r 反向

 

输出:

输入:

# 设置light风格的渐变色

#使用函数light_palette函数,设置连续色板的风格
sns.palplot(sns.light_palette("green"))   # 设置light风格的绿色渐变

 

输出:

输入:

# 设置dark风格的渐变色

# 使用dark_palette函数设置dark风格的渐变
sns.palplot(sns.dark_palette("purple"))  # 设置dark风格的紫色

 

输出:

 

输入:

# 设置渐变的颜色排列顺序

# reverse参数设置渐变的排列顺序
sns.palplot(sns.light_palette("navy", reverse=True)) #reverse可以设置颜色排列顺序

 

输出:

渐变色简单应用

输入:

# 渐变色简单易用

# 生成一个多元正态分布矩阵
# 参数mean : 均值
# 参数cov : 协方差, array类型
# 参数size: 个数
x, y = np.random.multivariate_normal(mean=[0, 0], cov=[[1, -.5], [-.5, 1]], size=300).T

pal = sns.dark_palette("green",as_cmap=True)
# as_cmap=True,返回一个colormap对象

sns.kdeplot(x, y, cmap=pal)
# kdeplot : 核密度估计图,
# cmap=pal,以colormap方式来设置颜色

 

输出:

 

4.单变量分析图

import numpy as np
import pandas as pd
from scipy import stats, integrate
import matplotlib.pyplot as plt
import seaborn as sns

 

频数直方图

一般频数直方图

输入:

# 频数直方图

# 生成100个成标准正态分布的随机数
x = np.random.normal(size=100)

# sns.distplot画频数直方图
# kde=True,进行核密度估计
sns.distplot(x,kde=True) 

 

输出:

设置频数直方图的bins 

输入:

# 设置频数直方图的bins

sns.distplot(x, bins=20, kde=False)

 

输出:

分析数据分布情况

 输入:

# 数据分布情况

# kde核密度估计,
# fit拟合参数(黑色线条)
# 蓝色线条为核密度估计线条
sns.distplot(x, kde=True, fit=stats.alpha) 

 

输出:

5.双变量分析图

主要用一下几个图画双变量的分析图:

# 构造数据

mean, cov = [0, 1], [(1, .5), (.5, 1)]
# 二维多正态分数的数据
data = np.random.multivariate_normal(mean, cov, 200)
df = pd.DataFrame(data, columns=["x", "y"]) #将array结构转换为dataframe结构,添加列名。

 

散点图

输入:

# 散点图

# 一般用散点图展示两个变量间的关系
sns.jointplot(x='x', y='y', data=df, size=7)  # x,y参数也可以用x=df['x'], y=df['y'] 的形式传入

# sns.jointplot画双变量关系图,
# data传入dataframe,x,y设置两个变量数据,
# size设置图的大小

 

输出:

六角图

 输入:

# 六角图

# 数据
x, y = np.random.multivariate_normal(mean, cov, 1000).T

# 设置画图风格
with sns.axes_style("white"): 
    sns.jointplot(x=x, y=y, kind="hex", color="k", size = 7) 

# kind='hex' 画出六角图
# 六角图中颜色越深的区域表示该区域的点越密集,数据越多

 

输出:

pairplot函数

 输入:

# pairplot函数

# 分析多个变量间,每两个变量间的关系
# 不同变量间用散点图表示
# 同一变量用直方图表示

# 内置数据集:鸢尾花的数据集
iris = sns.load_dataset("iris") 
# print (iris.head())
sns.pairplot(iris)

 

输出:

 

6.双变量回归分析图

# 数据导入

import numpy as np
import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt

import seaborn as sns
sns.set(color_codes=True)

# 内置数据集tips小费
tips = sns.load_dataset("tips") 

tips.head()

两变量回归关系regplot实现

输入:

# 两变量画回归关系图(regplot函数)

# regplot()和lmplot()都可以绘制回归关系,推荐regplot()

plt.figure(figsize = (7,7))
sns.regplot(x="total_bill", y="tip", data=tips)
# sns.regplot画数据散点和线性拟合的图,
# 设置x坐标,y坐标,data传入dataframe

 

输出:

两变量回归关系图lmplot实现

输入:

# 两变量画回归关系图(lmplot函数)

sns.lmplot(x="total_bill", y="tip", data=tips,size = 7)

输出:

抖动设置

输入:

# 设置横向抖动

# x_jitter参数设置点横向抖动量。
sns.regplot(x="size", y="tip", data=tips, x_jitter=.05) 

# 部分数据重叠,因此设置抖动,减少覆盖点,便于观察点的分布

输出:

 

7.多变量回归分析图

# 数据读取

import numpy as np
import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns

# 设置风格
sns.set(color: #800000;">"whitegrid")

# 数据加载
titanic = sns.load_dataset("titanic")
tips = sns.load_dataset("tips")
iris = sns.load_dataset("iris")

分类散点图stripplot()实现(两变量)

输入:

# 分类散点图(两变量:day,total_bill)

# sns.stripplot()和sns.swarmplot()均能实现分类散点图

plt.figure(figsize=(10,6))

# 图型基本设置
plt.xticks(size=12) 
plt.yticks(size=12)
plt.xlabel('day',size=16) 
plt.ylabel( 'total_bill',size=16)

# 分析day与total_bill间的关系
sns.stripplot(x="day", y="total_bill", data=tips)  

输出:

数据重叠严重,影响观察数据的量,因此设置抖动。

输入:

# 数据重叠严重,影响观察数据的量,因此设置抖动

# jitter=True
sns.stripplot(x="day", y="total_bill", data=tips, jitter=True)

输出:

分类散点图swarmplot()实现(两变量)

输入:

# swarmplot函数实现类别散点图

sns.swarmplot(x="day", y="total_bill", data=tips)

输出:

分类散点图三变量实现

输入:

# 分类散点图(三变量:day, total_bill, sex)

# 传入的第三个变量,通过颜色区分

plt.figure(figsize=(10,6))
palette1=sns.color_palette("bright")

# hue设置第三个变量,palette设置调色板颜色
sns.swarmplot(x="day", y="total_bill", hue="sex",palette = palette1,data=tips)

输出:

输入:

# 分类散点图(三变量:day, total_bill, time)

plt.figure(figsize=(10,6))

# hue接收第三个变量
sns.swarmplot(x="total_bill", y="day", hue="time", data=tips)

输出:

盒图(三变量)

 盒图是显示数据离散度的一种图形。它对于显示数据的离散的分布情况效果不错。
 IQR = Q3-Q1,即上四分位数与下四分位数之间的差,也就是盒子的长度。
 N = 1.5IQR 如果一个值>Q3+N或 < Q1-N,则为离群点

 盒图特点:
 通过盒图,在分析数据的时候,盒图能够有效地帮助我们识别数据的特征:
 直观地识别数据集中的异常值(查看离群点)。
 判断数据集的数据离散程度和偏向(观察盒子的长度,上下隔间的形状,以及胡须的长度)。

输入:

# 盒图(三变量:day,total_bill, time)

# sns.boxplot()
# 盒图是显示数据离散度的一种图形。它对于显示数据的离散的分布情况效果不错。
# IQR = Q3-Q1,即上四分位数与下四分位数之间的差,也就是盒子的长度。
# N = 1.5IQR 如果一个值>Q3+N或 < Q1-N,则为离群点

# 盒图特点:
# 通过盒图,在分析数据的时候,盒图能够有效地帮助我们识别数据的特征:
# 直观地识别数据集中的异常值(查看离群点)。
# 判断数据集的数据离散程度和偏向(观察盒子的长度,上下隔间的形状,以及胡须的长度)。

# 基本设置
plt.figure(figsize=(10,6))
plt.xticks(size=12)
plt.yticks(size=12)
plt.xlabel('day',size=16)
plt.ylabel( 'total_bill',size=16)

sns.boxplot(x="day", y="total_bill", hue="time", data=tips)

输出:

小提琴图(三变量)

输入:

# 小提琴图(三变量:day, total_bill, time)

# sns.violinplot()函数实现

plt.figure(figsize=(10,6))
plt.xticks(size=12)
plt.yticks(size=12)
plt.xlabel('total_bill',size=16)
plt.ylabel( 'day',size=16)

# sns.violinplot()画小提琴图
sns.violinplot(x="total_bill", y="day", hue="time", data=tips)
# 图中白点是中位数,
# 中间黑色盒形是上四分位点和下四分位点,
# 黑色的线条表示离群点的离群程度,越长表示离群点越远

plt.show()

输出:

小提琴图设置

 输入:

# 小提琴图设置(三变量:day, total_bill, sex)

# split设置左右区分
sns.violinplot(x="day", y="total_bill", hue="sex", data=tips, split=True)

plt.show()

输出:

小提琴图和分类散点图组合

输入:

# 小提琴图和分类散点图组合

# 基本设置
plt.figure(figsize=(10,6))
plt.xticks(size=12)
plt.yticks(size=12)
plt.xlabel('total_bill',size=16)
plt.ylabel( 'day',size=16)

# inner设置是否显示中间的盒形和线条
sns.violinplot(x="day", y="total_bill", data=tips, inner=None)
# alpha设置透明度
sns.swarmplot(x="day", y="total_bill", data=tips, color="w", alpha=.6)

plt.show()

输出:

平均数条形图(三变量)

 输入:

# 平均数条形图(三变量:sex, survived, class)

# sns.barplot()函数实现平均数条形图

# 基本设置
plt.figure(figsize=(10,6))
plt.xticks(size=12)
plt.yticks(size=12)
plt.xlabel('sex',size=16)
plt.ylabel( 'survived',size=16)

sns.barplot(x="sex", y="survived", hue="class", data=titanic,ci=95)
#黑色线条表示置信度,
# ci 设置黑色线条的大小,范围在[0,100]

plt.show()

输出:

点图(三变量)

输入:

# 点图(三变量:sex, survived, class)

# sns.pointplot()绘制点图

plt.figure(figsize=(10,6))
plt.xticks(size=12)
plt.yticks(size=12)
plt.xlabel('sex',size=16)
plt.ylabel( 'survived',size=16)

# 反映变化趋势
sns.pointplot(x="sex", y="survived", hue="class", data=titanic,ci=70)
# ci=70 设置执行度

plt.show()

输出:

点图细节设置

输入:

# 点图细节设置

sns.pointplot(x="class", y="survived", hue="sex", data=titanic,
              palette={"male": "g", "female": "m"},
              markers=["^", "o"], linestyles=["-", "--"],
             scale=1.5)   

# palette 通过调色板来设置颜色,
# markers设置点的形状,
# linestyles设置显的风格,
# scale设置线条的粗细

plt.show()

输出:

多层面板分类图

输入:

# 多层面板分类图

# sns.factorplot() 实现多层面板分类图

# x,y,hue设置要画在一个图中的数据集变量名
sns.factorplot(x="class", y="survived", hue="sex", data=titanic, size=6,ci=50)

plt.show()

输出:

输入:

# 通过kind参数指定图的类型

sns.factorplot(x="day", y="total_bill", hue="smoker", data=tips, kind="bar", size=6)

plt.show()

输出:

四个变量下的分类散点图

 输入:

# 四个变量下的分类散点图

# kind参数指定图类型
# loc参数接收第四个参数
sns.factorplot(x="day", y="total_bill", hue="smoker",col="time", data=tips, kind="swarm", size=6)

# 共四个变量了
# col和row设置更多的变量名,进行平铺显示(以不同的图进行区分)
plt.show()

输出:

四变量下的盒图

输入:

# 四变量下的盒图

sns.factorplot(x="time", y="total_bill", hue="smoker",
               col="day", data=tips, kind="box", size=6, aspect=1,col_wrap=2)

plt.show()

输出:

多变量分析图其他参数

Parameters:

  • x,y,hue 数据集变量 变量名
  • date 数据集 数据集名
  • row,col 更多分类变量进行平铺显示 变量名
  • col_wrap 每行的最高平铺数 整数
  • estimator 在每个分类中进行矢量到标量的映射 矢量
  • ci 置信区间 浮点数或None
  • n_boot 计算置信区间时使用的引导迭代次数 整数
  • units 采样单元的标识符,用于执行多级引导和重复测量设计 数据变量或向量数据
  • order, hue_order 对应排序列表 字符串列表
  • row_order, col_order 对应排序列表 字符串列表
  • kind : 可选:point 默认, bar 柱形图, count 频次, box 箱体, violin 提琴, strip 散点,swarm 分散点 size 每个面的高度(英寸) 标量 aspect 纵横比 标量 orient 方向 "v"/"h" color 颜色 matplotlib颜色 palette 调色板 seaborn颜色色板或字典 legend hue的信息面板 True/False legend_out 是否扩展图形,并将信息框绘制在中心右边 True/False share{x,y} 共享轴线 True/False

8.FacetGrid()的使用方法

# 读取数据
import numpy as np
import pandas as pd
import seaborn as sns
from scipy import stats
import matplotlib as mpl
import matplotlib.pyplot as plt

sns.set(style="ticks")
tips = sns.load_dataset("tips")
# tips.head()

FacetGrid()绘制频数直方图

输入:

# FacetGrid()绘制频数直方图

# sns.FacetGrid,以网格图的方式呈现多变量的关系

# 传入的数据集“tips”
# 指定第四个变量“time”
g = sns.FacetGrid(tips, col="time", size=6)  # 创建画板

# 绘制“tips”的频数直方图
g.map(plt.hist, "tip",edgecolor="white")

输出:

FacetGrid()绘制散点图

 输入:

# FacetGrid()绘制散点图

# 创建画板及变量
g = sns.FacetGrid(tips, col="sex", hue="smoker",size=6)
g.map(plt.scatter, "total_bill", "tip", alpha=.7)

#添加图例
g.add_legend()
plt.show()

输出:

FacetGrid()绘制回归关系图

 输入:

# FacetGrid()绘制回归关系图

# margin_titles是否显示边缘的标题
g = sns.FacetGrid(tips, row="smoker", col="time", margin_titles=True)
#fit_reg是否显示拟合曲线
g.map(sns.regplot, "size", "total_bill", color="g", fit_reg=False, x_jitter=.1) 

plt.show()

输出:

FacetGrid()绘制bar图

输入:

# FacetGrid()绘制bar图

g = sns.FacetGrid(tips, col="day", size=4, aspect=.5)
# aspect设置长宽比

g.map(sns.barplot, "sex", "total_bill")
plt.show()

输出:

FacetGrid()指定画图顺序

输入:

# 指定画图顺序

from pandas import Categorical 

# 获取数据的索引
ordered_days = tips.day.value_counts().index
print (ordered_days)

# Categorical指定顺序,里面传入自定义顺序
ordered_days = Categorical(['Thur', 'Fri', 'Sat', 'Sun']) 

# row_order=ordered_days设置顺序
g = sns.FacetGrid(tips, row="day", row_order=ordered_days,
                  size=1.7, aspect=4,)

g.map(sns.boxplot, "total_bill")
plt.show()

输出:

FacetGrid()绘制散点图

输入:

# FacetGrid()绘制散点图

pal = dict(Lunch="seagreen", Dinner="gray")
g = sns.FacetGrid(tips, hue="time", palette=pal, size=5)

# s设置点的大小,
# edgecolor设置点边缘的颜色
g.map(plt.scatter, "total_bill", "tip", s=50, alpha=.7, liner") 
# 添加图例
g.add_legend()

plt.show()

输出:

散点图细节设置:

输入:

# 散点图细节设置1

# palette 设置颜色
# hue_kws指定线型
g = sns.FacetGrid(tips, hue="sex", palette="Set1", size=5, hue_kws={"marker": ["^", "v"]}) 
g.map(plt.scatter, "total_bill", "tip", s=100, linewhite")
g.add_legend()

plt.show()

输出:

输入:

# 散点图细节设置2

# 涉及到了四个变量,
# tips、totall bill、smoker和sex,
# 使用row和col的两个变量进行平铺区分显示
with sns.axes_style("white"):
    g = sns.FacetGrid(tips, row="sex", col="smoker", margin_titles=True, size=5) 

# 设置坐标轴的标题,传入XY轴的标题,字符串形式   
g.map(plt.scatter, "total_bill", "tip", color="#334488", edgecolor="white", lw=.5);

# 设置标签
g.set_axis_labels("Total bill (US Dollars)", "Tip") 

# 设置坐标轴刻度
g.set(xticks=[10, 30, 50], yticks=[2, 6, 10])

#设置子图之间的间距
g.fig.subplots_adjust(wspace=.02, hspace=.02)

输出:

PairGrid()绘制多变量间散点图

一般图形

输入:

# PairGrid()画多变量间散点图

# 读取数据
iris = sns.load_dataset("iris")

# 指定画板,传入数据
g = sns.PairGrid(iris)

# map画图
g.map(plt.scatter)

plt.show()

输出:

细节设置

输入:

# PairGrid()细节设置

g = sns.PairGrid(iris)

# 设置对角线上的图的类型
g.map_diag(plt.hist)

# 设置非对角线上图的类型
g.map_offdiag(plt.scatter)

plt.show()

输出:

添加变量

输入:

# 添加变量species

g = sns.PairGrid(iris, hue="species")
g.map_diag(plt.hist)
g.map_offdiag(plt.scatter)
g.add_legend()#添加图例
plt.show()

输出:

设置多指标

输入:

# 设置要画的指标

# 通过vars指定要画的指标
g = sns.PairGrid(iris, vars=["sepal_length", "sepal_width"], hue="species") 
g.map(plt.scatter)
g.add_legend()

plt.show()

输出:

 

 颜色控制

输入:

# 颜色控制

# palette 使用调色板来设置颜色
g = sns.PairGrid(tips, hue="size", palette="GnBu_d",size = 4) 
g.map(plt.scatter, s=70, edgecolor="white")
g.add_legend()

plt.show()

输出:

9.热度图(heatmap)

一般图形

# 数据读取
import matplotlib.pyplot as plt
import numpy as np; 
np.random.seed(0)
import seaborn as sns;
sns.set()

输入:

# 热度图
uniform_data = np.random.rand(3, 3)
# print (uniform_data)
heatmap = sns.heatmap(uniform_data)

# 通过颜色的变化反映数字大小

输出:

细节设置

设置bar两端

 输入:

# vmix,vmax设置bar两端

# 设置bar的两端
ax = sns.heatmap(uniform_data, vmin=0.2, vmax=0.5)

# 大于0.5定为淡色,小于0.2就定为黑色

输出:

设置中间数

输入:

# center设置中间数

# center = 0
# 大于0属于一种色系
# 小于0属于另一种色系

normal_data = np.random.randn(3, 3)
# print (normal_data)
ax = sns.heatmap(normal_data, center=0)

输出:

pivot()重塑数据

一般图形

输入:

# pivot()重塑数据

# 数据读取
flights = sns.load_dataset("flights")
# flights.head()

# pivot重塑数据,产生一个“pivot”表格,形成dataframe结果
flights1 = flights.pivot("month", "year", "passengers") 
# print (flights1)

plt.figure(figsize=(10,8))
ax = sns.heatmap(flights1)

输出:

添加数值

输入:

# 添加数值

plt.figure(figsize=(10,8))

# annot显示注释,
# fmt设置注释的形式
ax = sns.heatmap(flights1, annot=True,fmt="d") 

# fmt='d': 十进制的整数显示
# fmt='f' : float小数
# fmt='e': 科学计数法

输出:

设置间距

输入:

# 设置间距

plt.figure(figsize=(10,8))

# linewidths设置色块之间的间距
ax = sns.heatmap(flights1, linewidths=1) 

输出:

设置颜色

 输入:

# 设置颜色

plt.figure(figsize=(10,8))
ax = sns.heatmap(flights1, cmap="YlGnBu") # cmap设置颜色。

输出:

设置bar的显示与否

输入:

# 设置bar的显示与否

plt.figure(figsize=(8,8))

#cbar设置colorbar是否显示
ax = sns.heatmap(flights1, cbar=False) 

输出:


推荐阅读
  • Ihavetwomethodsofgeneratingmdistinctrandomnumbersintherange[0..n-1]我有两种方法在范围[0.n-1]中生 ... [详细]
  • 目录预备知识导包构建数据集神经网络结构训练测试精度可视化计算模型精度损失可视化输出网络结构信息训练神经网络定义参数载入数据载入神经网络结构、损失及优化训练及测试损失、精度可视化qu ... [详细]
  • 本文介绍了如何利用 `matplotlib` 库中的 `FuncAnimation` 类将 Python 中的动态图像保存为视频文件。通过详细解释 `FuncAnimation` 类的参数和方法,文章提供了多种实用技巧,帮助用户高效地生成高质量的动态图像视频。此外,还探讨了不同视频编码器的选择及其对输出文件质量的影响,为读者提供了全面的技术指导。 ... [详细]
  • 通过使用 `pandas` 库中的 `scatter_matrix` 函数,可以有效地绘制出多个特征之间的两两关系。该函数不仅能够生成散点图矩阵,还能通过参数如 `frame`、`alpha`、`c`、`figsize` 和 `ax` 等进行自定义设置,以满足不同的可视化需求。此外,`diagonal` 参数允许用户选择对角线上的图表类型,例如直方图或密度图,从而提供更多的数据洞察。 ... [详细]
  • vue引入echarts地图的四种方式
    一、vue中引入echart1、安装echarts:npminstallecharts--save2、在main.js文件中引入echarts实例:  Vue.prototype.$echartsecharts3、在需要用到echart图形的vue文件中引入:   importechartsfrom&amp;quot;echarts&amp;quot;;4、如果用到map(地图),还 ... [详细]
  • iOS snow animation
    CTSnowAnimationView.hCTMyCtripCreatedbyalexon1614.Copyright©2016年ctrip.Allrightsreserved.# ... [详细]
  • python模块之正则
    re模块可以读懂你写的正则表达式根据你写的表达式去执行任务用re去操作正则正则表达式使用一些规则来检测一些字符串是否符合个人要求,从一段字符串中找到符合要求的内容。在 ... [详细]
  • 本文介绍如何使用OpenCV和线性支持向量机(SVM)模型来开发一个简单的人脸识别系统,特别关注在只有一个用户数据集时的处理方法。 ... [详细]
  • 本文介绍了 Oracle SQL 中的集合运算、子查询、数据处理、表的创建与管理等内容。包括查询部门号为10和20的员工信息、使用集合运算、子查询的注意事项、数据插入与删除、表的创建与修改等。 ... [详细]
  • 浅析python实现布隆过滤器及Redis中的缓存穿透原理_python
    本文带你了解了位图的实现,布隆过滤器的原理及Python中的使用,以及布隆过滤器如何应对Redis中的缓存穿透,相信你对布隆过滤 ... [详细]
  • 利用python爬取豆瓣电影Top250的相关信息,包括电影详情链接,图片链接,影片中文名,影片外国名,评分,评价数,概况,导演,主演,年份,地区,类别这12项内容,然后将爬取的信息写入Exce ... [详细]
  • Python错误重试让多少开发者头疼?高效解决方案出炉
    ### 优化后的摘要在处理 Python 开发中的错误重试问题时,许多开发者常常感到困扰。为了应对这一挑战,`tenacity` 库提供了一种高效的解决方案。首先,通过 `pip install tenacity` 安装该库。使用时,可以通过简单的规则配置重试策略。例如,可以设置多个重试条件,使用 `|`(或)和 `&`(与)操作符组合不同的参数,从而实现灵活的错误重试机制。此外,`tenacity` 还支持自定义等待时间、重试次数和异常处理,为开发者提供了强大的工具来提高代码的健壮性和可靠性。 ... [详细]
  • 使用Python代码高效生成大规模随机数据集(千万级) ... [详细]
  • 2018 HDU 多校联合第五场 G题:Glad You Game(线段树优化解法)
    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6356在《Glad You Game》中,Steve 面临一个复杂的区间操作问题。该题可以通过线段树进行高效优化。具体来说,线段树能够快速处理区间更新和查询操作,从而大大提高了算法的效率。本文详细介绍了线段树的构建和维护方法,并给出了具体的代码实现,帮助读者更好地理解和应用这一数据结构。 ... [详细]
  • 本文介绍了如何在iOS平台上使用GLSL着色器将YV12格式的视频帧数据转换为RGB格式,并展示了转换后的图像效果。通过详细的技术实现步骤和代码示例,读者可以轻松掌握这一过程,适用于需要进行视频处理的应用开发。 ... [详细]
author-avatar
用户cnhr0qjy0s
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有