一、分布数据可视化 - 直方图与密度图

displot() / kdeplot()/ rugplot()

加载模块,设置风格,尺度

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns#设置风格,尺度
sns.set_style('darkgrid')
sns.set_context('paper')#不发出警告
import warnings
warnings.filterwarnings('ignore')

1.直方图 - distplot()

示例1:

rs = np.random.RandomState(10) #设定随机数种子
s = pd.Series(rs.randn(100) * 100)
sns.distplot(s, bins = 10, hist = True, kde = True, norm_hist = False,rug = True, vertical = True,color = 'b', label = 'distplot', axlabel = 'x')
plt.legend()

#bins ---> 箱数
#hist、ked ---> 是否显示箱/密度曲线
#norm_hist ---> 直方图是否按照密度来显示
#rug ---> 是否显示数据分布情况
#vertical ---> 是否水平显示
#color ---> 设置颜色
#label ---> 图例
#axlabel ---> x轴标注

图1. 直方图

示例2:


sns.distplot(s, rug = True,rug_kws = {'color':'y'},#设置数据频率分布颜色kde_kws = {'color':'k', 'lw':1, 'label':'KDE', 'linestyle':'--'},#设置密度曲线颜色、线宽、标注、 线形hist_kws = {'histtype':'stepfilled', 'linewidth':1, 'alpha':1, 'color':'g'})# 设置箱子的风格、线宽、透明度、颜色# 风格包括:'bar'、'barstacked'、'step'、'stepfilled'

图2. 直方图

2.密度图 - kdeplot()

2.1 单个样本数据密度分布图

sns.kdeplot(s,shade = False, #是否填充color = 'r', #设置颜色vertical = False) #设置是否水平)sns.kdeplot(s, bw = 1, label = 'bw : 0.2',linestyle = '--', linewidth = 1.2, alpha = 0.5)
sns.kdeplot(s, bw =20, label = 'bw : 2',linestyle = '--', linewidth = 1.2, alpha = 0.5)
#bw --> 控制拟合的程度,类似直方图的箱数
#数据频率分布
sns.rugplot(s, height = 0.1, color = 'r', alpha = 0.5)

图3. 单个样本数据密度分布图

2.2 两个样本的数据密度分布图

rs = np.random.RandomState(2) #设定随机数种子
df = pd.DataFrame(rs.randn(100,2),columns = ['A', 'B'])#两个维度数据生成曲线密度图,以颜色作为密度的衰减显示
sns.kdeplot(df['A'],df['B'],cbar = True,          #是否显示颜色的图例shade = True,         #是否填充cmap = 'Reds',        #设置调色盘shade_lowest = False, #最外围颜色是否显示n_levels = 50         #曲线个数(如果非常多,则会越平滑))#注意设置x,y轴
plt.scatter(df['A'],df['B'],s = 5, alpha = 0.5, color = 'k')
sns.rugplot(df['A'], color = 'g', axis = 'x', alpha = 0.5)
sns.rugplot(df['B'], color = 'r', axis = 'y', alpha = 0.5)

图4. 两个样本数据的密度分布图

2.3 多个样本的密度图

#多个密度图
#创建数据
rs1 = np.random.RandomState(2)
rs2 = np.random.RandomState(5)
df1 = pd.DataFrame(rs1.randn(100,2)+2, columns = ['A','B'])
df2 = pd.DataFrame(rs2.randn(100,2)-2, columns = ['A','B'])
#创建图表
sns.kdeplot(df1['A'],df1['B'],cmap = 'Greens',shade = True, shade_lowest = False)
sns.kdeplot(df2['A'],df2['B'],cmap = 'Blues',shade = True, shade_lowest = False)

3.rugplot()

这个函数就是显示数据分布情况,具体使用参见上面代码

python可视化进阶---seaborn1.3 分布数据可视化 - 直方图与密度图 displot() / kdeplot()/ rugplot()相关推荐

  1. python数据动态可视化进阶版,Matplotlib Animations 数据可视化进阶

    原标题:Matplotlib Animations 数据可视化进阶 如果你对我的代码有兴趣,可以在我的GitHub查看.当你第一次执行时,代码会报错(我一直没有解决),但是同样的代码框再执行一次,就能 ...

  2. 在R、Python和Julia中常用的数据可视化技术

    俗话说"一图胜千言".通过各种图片和图形化展示,我们可以更清晰地表达很多抽象概念.理论.数据模式或某些想法.在本章中,我们首先解释为什么应该关心数据可视化.然后,我们将讨论几种在R ...

  3. python hist函数_Python数据可视化:一文读懂直方图和密度图

    一图胜千言,使用Python的matplotlib库,可以快速创建高质量的图形. 用matplotlib生成基本图形非常简单,只需要几行代码,但要创建复杂的图表,需要调用更多的命令和反复试验,这要求用 ...

  4. python爬虫数据可视化_适用于Python入门者的爬虫和数据可视化案例

    本篇文章适用于Python小白的教程篇,如果有哪里不足欢迎指出来,希望对你帮助. 本篇文章用到的模块: requests,re,os,jieba,glob,json,lxml,pyecharts,he ...

  5. Python: 除matplotlib外还有哪些数据可视化库?

    Python: 除matplotlib外还有哪些数据可视化库? matplotlib算是python比较底层的可视化库,可定制性强.图表资源丰富.简单易用.达到出版质量级别. 其它的可视化库诸如: s ...

  6. Python基于WordCloud词云图的数据可视化分析 词云图的基本使用 政府工作报告分析

    Python基于WordCloud词云图的数据可视化分析 词云图的基本使用 政府工作报告分析 文章目录 1.词云图简介 2.wordcloud库的安装 3.WordCloud的主要参数说明 4.绘制词 ...

  7. python使用pyecharts库画地图数据可视化

    python使用pyecharts库画地图数据可视化 导库 中国地图 代码 结果 世界地图 代码 结果 省级地图 代码 结果 地级市地图 代码 结果 导库 from pyecharts import ...

  8. 用python进行简单的数据分析和数据可视化

    用python进行简单的数据分析和数据可视化 本篇文章主要是初步探索数据分析,简单了解数据分析大致流程 数据来源:来自于Kaggle平台上的一个项目:Explore San Francisco cit ...

  9. 【计算机专业毕设之基于python猫咪网爬虫大数据可视化分析系统-哔哩哔哩】 https://b23.tv/jRN6MVh

    [计算机专业毕设之基于python猫咪网爬虫大数据可视化分析系统-哔哩哔哩] https://b23.tv/jRN6MVh https://b23.tv/jRN6MVh

  10. 地铁译:Spark for python developers ---Spark处理后的数据可视化

    spark for python developer 一书,说实在的,质量一般,但勉强可以作为python 工程师的入门资料,至此,这一时段的地铁译结束了,开始新的阅读旅程-- 对于 Python 的 ...

最新文章

  1. tar解压 除去目录 指定路径
  2. 用indesign怎么更换名牌姓名_颚式破碎机如何拆卸?耐磨件怎么更换,可以用多久?答案都在这里...
  3. Python练习题:---给定一个字符串 {xxx[xxx{xxx}]xx{x[xxx]xxx{xxx}xx}x} 判断其中的 {}[]() 是否成对出现
  4. boost::geometry::assign用法的测试程序
  5. 富学金融穷学IT,分析互联网的新财富密码
  6. 设计模式之 中介者模式
  7. super构造方法为什么给子类赋值_【Java学习 | Javase】super
  8. 【机器视觉学习笔记】双边滤波算法(C++)
  9. 抱歉(HDU-1418)
  10. tftp服务器从交换机上下载配置命令_软考网络工程师之交换机和路由(交换机基础)...
  11. C语言-附加-给一个数求最大质数(完整代码)
  12. BZOJ 1029: [JSOI2007]建筑抢修 优先队列
  13. python逻辑型数据也叫什么_python基础(三)python数据类型
  14. Android10源码下载和编译(解锁/刷机)
  15. web前端大一实训 HTML+CSS+JavaScript王者荣耀(60页) web课程设计网页规划与设计 HTML期末大作业 HTML网页设计结课作业...
  16. firefox + pentadactyl 实现纯绿色高效易扩展浏览器(同时实现修改默认状态栏样式)...
  17. 微信小游戏排行榜:主域和子域
  18. 数字证书有什么作用?
  19. 局域网设置共享打印机步骤
  20. 视觉显著性 matlab,转载图像/视觉显著性检测技术发展情况梳理(Saliency Detection、Visual Attention)...

热门文章

  1. IntelliJ IDEA 绝对好用快捷键
  2. python 自动解4399数独游戏
  3. HTML制作一个汽车介绍网站【大学生网页制作期末作业】(汽车首页 1页 带psd)
  4. geoserver配置SQL图层 cql_filter模糊查询
  5. 软件工程作业——《人件》读书笔记
  6. pandas学习-变形-task15
  7. 新手入门,求大神帮助!!!
  8. Zabbix proxy
  9. 线段最大重合问题:最多有多少条线段是重合的
  10. 股票市场交易中的强化学习