seaborn:箱型图修改离群点颜色、形状

在用seaborn画图时遇到个问题,记录一下解决问题的过程,只想看结果的,请跳到【实际效果】

目录

问题描述  

解决思路

实际效果


问题描述  

import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
ax = sns.boxplot(data=tips)


        使用seaborn绘制 箱型图时,离群点的颜色默认为黑,不甚显眼,于是想修改离群点颜色,但是一看seaborn.boxplot() 的参数:

seaborn.boxplot(data=None, *, x=None, y=None, hue=None, 
    order=None, hue_order=None, orient=None, color=None, 
    palette=None, saturation=0.75, width=0.8, dodge=True, 
    fliersize=5, linewidth=None, whis=1.5, ax=None, **kwargs)

其中,唯一和离群点有关的参数,是fliersize,用于控制离群点的大小。 


解决思路

1.首先是在网上搜索“seaborn画箱型图更改离群点颜色”,果不其然没什么帮助。

2.于是,改搜索“画箱型图更改离群点颜色”,这次跳出一些结果,说的是用matplotlib画箱型图,如何设置离群点参数,简单来说,matplotlib画箱型图是可以设置离群点颜色的。

3.我们知道,seaborn的基础是matplotlib,并且很多功能的实现必须借助matplotlib,完全可以向seaborn传递matplotlib的绘图参数。于是打开matplotlib官方文档,点开pyplot.boxplot:

可以看到设置离群点格式的参数是flierprops,要求传入字典,想知道字典里面有哪些可选参数,直接在搜索框搜索flierprops

 看到第二个搜索结果中,似乎有应用范例,点进去,Ctrl+F搜索关键词

看到flierprops传入了四个参数(离群点的标记形状、点内填充色、点的大小、点边缘颜色)

至此,问题基本解决,来检验一下


实际效果

import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
ax = sns.boxplot(data=tips, flierprops = dict(
    marker='o', markerfacecolor='red', markersize=4, markeredgecolor='none'))

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值