Pandas+Matplotlib 箱式图异常值分析示例

yipeiwu_com7年前Python基础

我就废话不多说了,直接上代码吧!

# -*- coding: utf-8 -*-
 
import pandas as pd
import matplotlib.pyplot as plt
 
catering_sale = '../data/catering_sale.xls'
data = pd.read_excel(catering_sale, index_col=u'日期') #指定日期列为索引,data类型为DataFrame
 
plt.rcParams['font.sans-serif'] = ['SimHei']  #指定字体为黑体
plt.rcParams['axes.unicode_minus'] = False  #显示负号
 
plt.figure()
p = data.boxplot(return_type='dict')  #画箱式图
 
x = p['fliers'][0].get_xdata()  #fliers为异常值标签,get_xdata()与get_ydata()用来获取横纵坐标数组
y = p['fliers'][0].get_ydata()
y.sort()
 
#使用annotate添加注释,xy表示标注点坐标, xytext表示注释坐标
for i in range(len(x)):
  if i > 0:
    plt.annotate(y[i], xy=(x[i], y[i]), xytext=(x[i]+0.05 - 0.8/(y[i]-y[i-1]), y[i]))
  else:
    plt.annotate(y[i], xy=(x[i], y[i]), xytext=(x[i]+0.08, y[i]))
 
plt.show()
 
 
​

以上这篇Pandas+Matplotlib 箱式图异常值分析示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python下尝试多线程编程

多任务可以由多进程完成,也可以由一个进程内的多线程完成。 我们前面提到了进程是由若干线程组成的,一个进程至少有一个线程。 由于线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多...

常见的python正则用法实例讲解

下面列出Python正则表达式的几种匹配用法: 此外,关于正则的一切http://deerchao.net/tutorials/regex/regex.htm  1.测试正则表...

python基础教程之实现石头剪刀布游戏示例

下面是规则.你和你的对手,在同一时间做出特定的手势,必须是下面一种手势:石头,剪子,布.胜利者从下面的规则中产生,这个规则本身是个悖论.(a) 布包石头.(b)石头砸剪子,(c)剪子剪破...

python根据出生年份简单计算生肖的方法

本文实例讲述了python根据出生年份简单计算生肖的方法。分享给大家供大家参考。具体分析如下: 这里使用python根据出生年份计算生肖,看了代码会发现原来这么简单 #计算生肖 de...

Python使用Windows API创建窗口示例【基于win32gui模块】

Python使用Windows API创建窗口示例【基于win32gui模块】

本文实例讲述了Python使用Windows API创建窗口。分享给大家供大家参考,具体如下: 一、代码 # -*- coding:utf-8 -*- #! python3 impo...