【数据分析与可视化】Seaborn库简介及风格设置详解(图文解释 超详细)

2023-11-19

需要源码和PPT请点赞关注收藏后评论区留言私信~~~

一、Seaborn简介

Matplotlib绘图基本模仿MATLAB绘图库,其绘图风格和MATLAB类似。由于MATLAB绘图风格偏古典,因此,Python开源社区开发了Seaborn绘图模块,对Matplotlib进行封装,绘图效果更符合现代人的审美

Seaborn属于Matplotlib的一个高级接口,使得作图更加容易。在多数情况下使用Seaborn能做出很具吸引力的图,而使用Matplotlib可以制作具有更多特色的图。应该把Seaborn视为Matplotlib的补充,而不是替代物

使用Seaborn时,使用的导入惯例为

import seaborn as sns

Seaborn中共有5个大类21种绘图,如图7-1所示

二、风格设置

 1. Seaborn 绘图设置

风格设置用以设置绘图的背景色、风格、字型、字体等

Seaborn通过set函数实现风格设置

seaborn.set(context='notebook', style='darkgrid', palette='deep', font='sans-serif', font_scale=1, color_codes=True, rc=None)

绘制曲线

 

import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
def sinplot(flip = 2):
    x = np.linspace(0,20, 50)
    for i in range(1,5):
        plt.plot(x, np.cos(x + i * 0.8) * (9 - 2*i) * flip)
sinplot()

 运行结果为Matplotlib默认参数下的绘制风格,也可以使用seaborn.set进行风格设置

Seaborn设置风格

sns.set(style = 'darkgrid',font_scale = 1.5)
sinplot()

 如果需要转换为Seaborn默认的绘图设置 只需要调用sns.set方法即可

Seaborn默认风格

sns.set()
sinplot()

 2.Seaborn主题设置

利用set_style( )是用来设置主题的

Seaborn有五个预设好的主题: darkgrid, whitegrid,dark,white,和 ticks,默认为darkgrid

Seaborn将matplotlib的参数划分为两个独立的组合。第一组是设置绘图的外观风格的,第二组主要将绘图的各种元素按比例缩放的,以至可以嵌入到不同的背景环境中。控制这些参数的接口主要有两对方法

控制风格:axes_style(), set_style()

缩放绘图:plotting_context(), set_context()

每对方法中的第一个方法(axes_style(), plotting_context())会返回一组字典参数,而第二个方法(set_style(), set_context())会设置matplotlib的默认参数

主题设置

 

sns.set_style("white")  
sinplot()

 在seaborn中,可以利用despine()方法移除绘图中顶部和右侧的轴线

sinplot()
sns.despine()

 despine()方法中可以利用offset参数讲轴线进行偏置,另外,当刻度没有完全覆盖整个坐标轴的的范围时,利用trim参数限制已有坐标轴的范围

sinplot()
sns.despine(offset = 20, trim = True)

 也可以通过despine()控制哪个脊柱将被移除

移除轴线

sinplot()
sns.despine(left = True)

 除了选用预设的风格外,可以利用with 语句使用axes_style()方法设置临时绘图参数,可以在一张图片中采用多种绘图风格

设置临时绘图参数 

with sns.axes_style("darkgrid"):
    plt.subplot(2,1,1)
    sinplot( )
plt.subplot(2,1, 2)
sinplot(-1)

利用字典传递参数

sns.set_style("darkgrid", {"axes.facecolor": ".9"})
sinplot()

 3.设置绘图元素比例poster

 seaborn中通过set_context()设置缩放参数,预设的参数有paper, notebook, talk, poster。默认为notebook

设置绘图元素比例paper

sns.set_context("paper")
sinplot()

 设置绘图元素比例poster

sns.set_context("poster")
sinplot()

 设置绘图元素比例notebook

sns.set_context("notebook", font_scale = 1.8, rc = {"lines.linewidth": 1.5})
sinplot()

创作不易 觉得有帮助请点赞关注收藏~~~

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【数据分析与可视化】Seaborn库简介及风格设置详解(图文解释 超详细) 的相关文章

随机推荐

  • 面试必考真题

    1 输入一个链表 反转链表后 输出新链表的表头 package com csu marden public class Demo1 public static void main String args Node head new Node
  • 解决“17: 错误:程序中有游离的‘\240’,\302’

    参考链接 https blog csdn net asuphy article details 54602426 执行如下命令即可 sed i s o240 o302 g dy haikang test cpp
  • Invalid bound statement (not found):

    BUG描述 在执行动态SQL出现问题 原因 mapper接口中的方法名和mapper xml中的id标签不一致 解决方案 修改mapper接口中的方法名 使其对应到mapper xml中的id标签 参考资料
  • openssl的x509命令简单入门

    openssl的x509命令简单入门 openssl是一个强大的开源工具包 它能够完成完成各种和ssl有关的操作 命令说明 openssl help 会得到如下的提示 openssl Error help is an invalid com
  • 数据库常用命令之外键(foreign key)之多对一(总结,基础)

    我是小白 刚接触MySQL不久 现阶段正在学习 为此在CSDN上留下自己的学习笔记 如果有错误的地方还请大家见谅 评论或者私发我错误地方哦 谢谢大家 嘿嘿 此篇将记录外键的相关知识 上篇内容为对一张表的约束条件 传送门 创建表的完整性语法
  • golang基础教程

    目录 golang基础教程 一 环境搭建 golang基础教程 二 开发规范及API golang基础教程 三 变量与数据类型概述 golang基础教程 四 基本数据类型 golang基础教程 五 基本数据类型的转换 golang基础教程
  • 缺少nodejs环境,请在设置中配置nodejs的安装路径 - HBuilder - uniapp

    HBuilder运行uni app项目 点击 运行到 提示 缺少nodejs环境 请在设置中配置nodejs的安装路径 解决办法 找到工具 设置 运行配置 node运行配置 运行终端类型 选择 内置 外部 如果已经配置过 关闭编译器 重新打
  • Unity_如何使相机视角一直跟随角色移动

    实例代码如下 using System Collections using System Collections Generic using UnityEngine 相机视角跟踪 public class FollowTarget Mono
  • QHash & QMap 的顺序问题 (***)

    QT关联容器QMap QHash的Key值自动排序问题 对QMap中的key进行自定义排序 如何取消QMap自动排序 让QMap按照插入的顺序排列 通过插入顺序循环QHash QMap QHash插入后的显示顺序以及记录插入顺序的数据结构
  • OpenGL图形管线和坐标变换

    1 OpenGL 渲染管线 OpenGL渲染管线分为两大部分 模型观测变换 ModelView Transformation 和投影变换 Projection Transformation 做个比喻 计算机图形开发就像我们照相一样 目的就是
  • 最实用的chrome插件

    前言 说真的第一次看到CSDN这个插件的时候并没有感觉特别吸引我的地方 因为我个人安装了好多的插件 第二次看到CSDN插件还是因为广告上说的参赛拿奖 其实我的动机也不是很纯o o 插件地址 CSDN插件 走起 对于谷歌的插件安装方式很多 可
  • springboot——集成elasticsearch进行搜索并高亮关键词

    目录 1 elasticsearch概述 3 springboot集成elasticsearch 4 实现搜索并高亮关键词 1 elasticsearch概述 1 是什么 Elasticsearch 是位于 Elastic Stack 核心
  • C51单片机数码管动态显示

    数码管作为最廉价的输出设备 在各种自动化设备中有很大的应用 最简单普通的显示方式为动态刷新显示 称为假动态显示 即通过分时扫描每一位 利于人眼的视觉停留现象 造成一种静态显示的效果 如下图所示 C51单片机由于运行速度很慢 在高刷新频率下
  • ASCII与C简单数据类型

    ascII与简单数据类型 1 打印出所有ascII表中的字符 思路 ascII码值与阿拉伯数字0 127对应 故可以先将其以数字形式存在数组空间或内存空间中 然后用 c一个一个打印出来即可 本次采用数组进行存储 代码 include
  • 2013年8月11日星期日(7。15 色彩动画)

    距离上次封装有一个月了 PHYSX知道怎么弄朝向和位置了 我决定业余时间可以弄弄小游戏 这个例子是通过改变调色板ID来达到颜色的亮灭 这个肯定过时了 不过思路还是不错的 各个常量和结构体类型 define BLINKER ADD 0 add
  • 探索第三方 API 服务的身份验证方法:优点和缺点

    探索第三方 API 服务的身份验证方法 优点和缺点 赛斯 法特的相片 赛斯法特 2023 年 3 月 18 日 4分钟阅读 嗨 大家好 我们中的大多数人已经使用多个第三方 API 服务来实现您的业务逻辑 是的 他们中的大多数都有不同的身份验
  • mongodb安装(1)

    目录 一 mongodb安装 1mongodb介绍 2下载mongodb 3安装mongodb 4 启动mongodb 5 安装studio3t 一 mongodb安装 1mongodb介绍 2下载mongodb MongoDB 提供了可用
  • eclipse 环境配置第一个webapp的发布 及jsp代码的执行

    GBK 所有中文操作系统默认的编码 UTF 8 支持识别各个国家的字符 但这样 之前的代码如果用的是GBK编码 则会变成乱码 我们可以建一个新的工作区 新建一个文件夹 存放workspace 选择workspace位置后 等待重启 以后再建
  • 手把手教你进行APP数据埋点

    经过大半年的努力 产品终于开始趋向稳定 之前的版本一直在探索 需求经常改动 没时间系统进行埋点 随着产品的稳定以及工作的深入 越发认识到数据的重要性 所以开始着手数据埋点相关事项 这次亲历了产品 APP 从零开始进行数据埋点的过程 分享出来
  • 【数据分析与可视化】Seaborn库简介及风格设置详解(图文解释 超详细)

    需要源码和PPT请点赞关注收藏后评论区留言私信 一 Seaborn简介 Matplotlib绘图基本模仿MATLAB绘图库 其绘图风格和MATLAB类似 由于MATLAB绘图风格偏古典 因此 Python开源社区开发了Seaborn绘图模块