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),同时设置子图对象与画布两个属性

总结

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

  • 28
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 57
    评论
评论 57
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值