Python数据可视化之绘制抖动的带状图(图文并茂版!!!)

Posted 温柔且上进c

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python数据可视化之绘制抖动的带状图(图文并茂版!!!)相关的知识,希望对你有一定的参考价值。

数据准备

       •数据的详细获取方式参考博文:Python数据可视化之绘制带有最佳拟合线的散点图(图文并茂版!!!)
       •上述博客详细的描述了从数据获取,到数据分析包含数据特征值的解读等等!!

需要抖动的带状图的原因

       •首先我们使用上述数据集来绘制一幅简单的散点图,需要带状图原因就在其中!!

import matplotlib.pyplot as plt
import pandas as pd

# 获取数据
df = pd.read_csv(r'D:\\9\\mpg_ggplot2.csv')

# 绘制简单散点图
plt.figure(figsize=(6, 6))
plt.scatter(df.cty  # 横坐标
            , df.hwy)  # 纵坐标
plt.show()

图像显示:
在这里插入图片描述
       •首先来分析我们绘图所用的数据集,如下图!!
绘图所用数据集
       •由上图可得,如果将图中某两个特征值作为横纵坐标来绘制成散点图,则应该有234个点!!!
       •但是,从我们绘制的散点图来看,点数最多不超过200个,原因就是在绘制散点图前,首先会自动将那些横纵坐标相同的点去重,即将多个横纵坐标相同的点看成一个点来绘制图像!!!
       •并且从上述我们绘制的散点图来看,我们不知道是那些点有更多的相同值,它们每个点的大小,颜色都是相同的。所以如果我们想要绘制并展示出那些横纵坐标一致的点,就需要抖动的带状图来展示!!!

绘制抖动的带状图

       •上面我们分析了,需要带状图的原因,现在我们就使用和上面一样的数据来绘制抖动的带状图!!
代码测试:

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

df = pd.read_csv(r'D:\\9\\mpg_ggplot2.csv')

# 建立画布与子图对象
fig, ax = plt.subplots(figsize=(12, 8), dpi=80)  # ax 为子图对象  fig 为画布

# 绘制抖动图
sns.stripplot(x=df.cty, y=df.hwy
              , jitter=0.25  # 重要参数 抖动的幅度
              , size=8
              , ax=ax
              , linewidth=.5
              # , palette='tab20'  # 设置所需的调色板
              )

# 装饰图片
plt.rcParams['font.sans-serif'] = ['Simhei']  # 设置字体为黑体
plt.xlabel('城市里程/加仑', fontsize=16)  # x轴名称
plt.ylabel('公路里程/加仑', fontsize=16)  # y轴名称
plt.xticks(fontsize=12)
plt.yticks(fontsize=12)
plt.title('Use jittered plots to avoid overlapping of points', fontsize=22)
plt.show()

图像显示:

在这里插入图片描述

注意:重要参数

       •jitter:抖动的幅度(即同一位置两个点的距离大小),0 表示安全不存在抖动!!!
       •palette:调色板,即为不同点的颜色,不使用此参数即为使用默认的调色板,也可自定义使用其他种类的调色板
       •fig, ax = plt.subplots(figsize=(12, 8), dpi=80),同时设置子图对象与画布两个属性

总结

       •抖动的带状图的作用就是向我们展示哪些位置存在着相同的点,根据抖动的幅度来判断各个相同点的数量的多少

以上是关于Python数据可视化之绘制抖动的带状图(图文并茂版!!!)的主要内容,如果未能解决你的问题,请参考以下文章

Python数据可视化之使用spatial绘制气泡图凸包(图文并茂详细版!!!)

R语言使用ggplot2包geom_jitter()函数绘制分组(strip plot,一维散点图)带状图(水平带状图垂直带状图抖动程度配置)实战

Python数据可视化之绘制带有最佳拟合线的散点图(图文并茂版!!!)

Python可视化之绘制边缘直方图(图文并茂版!!)

R语言使用ggplot2包的快速可视化函数qplot绘制分组点图(带状图)并配置分组颜色实战

Python数据可视化之散点图(进阶篇---图文并茂详细版!!!)