#coding:utf-8
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
import pandas as pd
from pandas import Series,DataFrame '''
plt.scatter(x,y)
plt.show() plt.bar(x,y,width=0.3,color='y')
plt.bar(x+0.3,y2,width=0.3,color='y')
plt.bar(x,y2,width=0.3,color='y',bottom=y) plt.pie(x=x,labels=y,...)
plt.show() plt.boxplot(data,sym='o',whis=0.05)
plt.boxplot(data,labels=labe)
plt.show()
'''
data_train=pd.read_csv(r'C:\python\demo\ML\data\TravelRecords0708.csv',encoding='gbk')
title ='(2017.07-2017.08)'
#print(data_train.loc[:,['Name','Team','TravelDays','RequesterAddress']])
def tongjiByName(): fig = plt.figure()
fig.set(alpha=0.2) # 设定图表颜色alpha参数 #plt.subplot2grid((2, 3), (0, 0)) # 在一张大图里分列几个小图
data_train.Name.value_counts().plot(kind='bar') # plots a bar graph of those who surived vs those who did not.
plt.title(u"DB出差同事出差次数情况统计"+title) # puts a title on our graph
plt.ylabel(u"出差次数")
plt.text(20,4.5,u'出差总次数(次):')
plt.text(25, 4.5, data_train.Name.value_counts().values.sum())
plt.text(20,4.0,u'出差总人数(个):')
plt.text(25, 4.0, len(data_train.Name.value_counts()))
plt.text(20,3.5,u'出差总天数(天):')
plt.text(25, 3.5, data_train.TravelDays.values.sum())
print(data_train.TravelDays.values.sum())
plt.show() def tongjiByteam():
fig = plt.figure()
fig.set(alpha=0.2) # 设定图表颜色alpha参数 #plt.subplot2grid((2, 3), (0, 0)) # 在一张大图里分列几个小图
data_train.Team.value_counts().plot(kind='pie') # plots a bar graph of those who surived vs those who did not.
#data_train.Team.value_counts().plot(kind='bar') # plots a bar graph of those who surived vs those who did not.
print(data_train.Team.value_counts()) plt.title(u"深圳马会各team出差人数统计情况(2017.07-08)") # puts a title on our graph
plt.text(5.5,10.5,u'出差总人数(次):')
plt.text(6.8, 10.5, data_train.Team.value_counts().values.sum()) #统计series的value 总和
#plt.text(5.5, 9.5, u'出差team数(个):')
#plt.text(6.8, 9.5, len(data_train.Team.value_counts().index)) #统计series的index 总和
#plt.ylabel(u"出差人数")
plt.show() def tongjiByteamPIE():
fig = plt.figure()
fig.set(alpha=0.2) # 设定图表颜色alpha参数 labels=data_train.Team.value_counts().index
explode = [0, 0.5,0,0,0,0,0,0,0,0,0,0] # 0.1 凸出这部分,
plt.pie(x=data_train.Team.value_counts(),labels=labels,autopct='%3.1f %%',shadow=True,labeldistance=1.1,startangle=90,pctdistance=0.6) plt.title(u"DB各team出差人数统计情况"+title) # puts a title on our graph
plt.text(5.5,10.5,u'出差总人数(次):')
plt.text(6.8, 10.5, data_train.Team.value_counts().values.sum()) #统计series的value 总和
plt.show() def tongjiByTravelDays():
fig = plt.figure()
fig.set(alpha=0.2) # 设定图表颜色alpha参数 #plt.subplot2grid((2, 3), (0, 0)) # 在一张大图里分列几个小图
data_train.TravelDays.value_counts().plot(kind='bar') # plots a bar graph of those who surived vs those who did not.
#data_train.Team.value_counts().plot(kind='bar') # plots a bar graph of those who surived vs those who did not.
print(data_train.Team.value_counts()) plt.title(u"DB各team出差时长统计情况"+title) # puts a title on our graph
plt.text(2.5,30.5,u'出差人次(人):')
plt.text(3.8, 30.5, data_train.TravelDays.value_counts().values.sum()) #统计series的value 总和
plt.text(2.5, 25.5, u'出差时长种类(类):')
plt.text(3.8, 25.5, len(data_train.TravelDays.value_counts().index)) #统计series的index 总和 plt.text(2.5, 20.5, u'出差时长最长天数(天):')
plt.text(3.8, 20.5, data_train.TravelDays.values.max()) #统计series的index 总和
print(data_train.TravelDays.values.max())
plt.ylabel(u"出差人数")
plt.xlabel(u"出差天数")
plt.show() def tongjiByRequestAddress():
fig = plt.figure()
fig.set(alpha=0.2) # 设定图表颜色alpha参数 #plt.subplot2grid((2, 3), (0, 0)) # 在一张大图里分列几个小图
#data_train.RequesterAddress.value_counts().plot(kind='pie') # plots a bar graph of those who surived vs those who did not.
#data_train.Team.value_counts().plot(kind='bar') # plots a bar graph of those who surived vs those who did not.
labels='HK','SZ'
explode = [0, 0.2] # 0.1 凸出这部分,
plt.pie(x=data_train.RequesterAddress.value_counts(),labels=labels,autopct='%1.1f %%',shadow=True,labeldistance=1.1,startangle=90,pctdistance=0.6)
print(data_train.RequesterAddress.value_counts()) plt.title(u"DB同事出差邀请(香港/深圳)统计情况"+title) # puts a title on our graph
plt.show() #tongjiByName()
#tongjiByteam()
tongjiByteamPIE()
#tongjiByTravelDays()
#tongjiByRequestAddress()

Pandas.plot 做图 demo(scatter,bar,pie)的更多相关文章

  1. Pandas plot出图

    1.创建一个Series 这是一个线性的数据,我们随机生成1000个数据,Series 默认的 index 就是从0开始的整数,但是这里我显式赋值以便让大家看的更清楚 >>> imp ...

  2. python做图笔记

    1. 工具选择 了解了基本python,rodeo,anaconda套件这三种工具. (1)基本python,下载安装python的最新版(目前是python3.7).注意要使用安装版.安装好后,一般 ...

  3. Qt+ECharts开发笔记(四):ECharts的饼图介绍、基础使用和Qt封装百分比图Demo

    前言   前一篇介绍了横向柱图图.本篇将介绍基础饼图使用,并将其封装一层Qt.  本篇的demo使用隐藏js代码的方式,实现了一个饼图的基本交互方式,并预留了Qt模块对外的基础接口.   Demo演示 ...

  4. QiniuUpload- 一个方便用七牛做图床然后插入markdown的小工具

    最近一段时间有用markdown做笔记,其他都好,但是markdown插入图片挺麻烦的,特别是想截图之后直接插入的时候.需要首先把图片保存了,然后还要上传到一个地方生成链接才能插入.如果有个工具可以直 ...

  5. 超级简单的jquery轮播图demo

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. win10 uwp 使用 asp dotnet core 做图床服务器客户端

    原文 win10 uwp 使用 asp dotnet core 做图床服务器客户端 本文告诉大家如何在 UWP 做客户端和 asp dotnet core 做服务器端来做一个图床工具   服务器端 从 ...

  7. pandas知识点脑图汇总

    参考文献: [1]Pandas知识点脑图汇总

  8. matplotlib 做图通过弹出窗口展示 spyder

    tools =>preferences=>Ipython console=>Graphics Graphics backend 中Backend 由Inline改为 Automati ...

  9. 用 GraphScope 像 NetworkX 一样做图分析

    NetworkX 是 Python 上最常用的图分析包,GraphScoep 兼容 NetworkX 接口.本文中我们将分享如何用 GraphScope 像 NetworkX 一样在(大)图上进行分析 ...

随机推荐

  1. wcf 中客户端调用之死 感悟 wcf与原来的webservice2.0 的客户端调用区别(wcf调用完不关闭的话那就把web服务搞死了)

    说到wcf,本人也是刚刚使用所以不是很熟悉 在做项目的时候采用webservice+客户端程序架构 写了一个wcf中的webservice之后,又写了很多的客户端exe程序,有的是轮询调用这个webs ...

  2. ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段

    ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...

  3. OpenCV 学习笔记03 boundingRect、minAreaRect、minEnclosingCircle、boxPoints、int0、circle、rectangle函数的用法

    函数中的代码是部分代码,详细代码在最后 1 cv2.boundingRect 作用:矩形边框(boundingRect),用于计算图像一系列点的外部矩形边界. cv2.boundingRect(arr ...

  4. linux大文件传输

    Mysql复制,初始化服务器,备份/还原等大文件复制是很常见的任务,他们完成的实际任务可以概括为: 1,(可选)压缩文件 2,发送文件 3,解压文件 4,验证文件一致性 下面介绍几种方法: 1,最简单 ...

  5. Android插件化与热修复(六)-微信Tinker原理分析

    Tinker热修复原理分析 热补丁技术是在用户不需要重新安装应用的情况下实现应用更新,可快速解决一些线上问题.热补丁省去了Android应用发布版本的成本,而且用户端的更新也是无感知的. Tinker ...

  6. docker 和 vagrant 作为程序发布 和 开发的独立而统一的运行环境

    docker 和 vagrant 作为程序发布 和 开发的运行环境,可以提供打包程序,并使得程序运行在一个独立的虚拟环境中,避免程序发布到客户机之后,环境不一致导致的诸多问题.     refer: ...

  7. 关于埃博拉病毒的基本知识(ABC)

    科学研究表明.埃博拉病毒的存在历史很久远,可能有两千多万年的历史,在类人猿出现的时期就已存在. 埃博拉病毒呈现一种"蚕丝状",又细又长,无色透明.直径有80纳米,长短不等,在14微 ...

  8. 移动硬盘做pe启动盘

  9. OAuth 2.0介绍

    简介 OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版. 一.应用场景 为了理解OAuth的适用场合,让我举一个假设的例子. 有一个&q ...

  10. vue-client脚手架使用

    1.必须安装node环境 2.安装vue-client脚手架,在命令提示符中运行npm install -g vue-cli 3.创建项目 vue init 模板名 项目名 例如:vue init w ...