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

yipeiwu_com6年前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两台电脑实现TCP通信的方法示例

为了实现Nao机器人与电脑端的TCP通信,于是研究了一下Python实现TCP通信,在网上也看到了很多例子,但大多都是在一台机器上验证。在两台机器上使用,出了一些小故障。 注意:若两台电...

python字典多键值及重复键值的使用方法(详解)

python字典多键值及重复键值的使用方法(详解)

在Python中使用字典,格式如下: dict={ key1:value1 , key2;value2 ...} 在实际访问字典值时的使用格式如下: dict[key] 多...

python模拟登录百度代码分享(获取百度贴吧等级)

复制代码 代码如下:# -*- coding: utf8 -*-'''Created on 2013-12-19 @author: good-temper''' import urlli...

Pycharm 设置默认头的图文教程

Pycharm 设置默认头的图文教程

1. 设置的路径是File->settings->Editor->File and Code Templates->Python Script内容见图: 这样新...

详解Python中列表和元祖的使用方法

详解Python中列表和元祖的使用方法

list Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。 比如,列出班里所有同学的名字,就可以用一个list表示: >...