1 import matplotlib.pyplot as plt
2 import pandas as pd
3 import matplotlib as mpl

含有中文无法正常显示,需增加如下代码:

1 mpl.rcParams['font.sans-serif'] = ['SimHei']
2 plt.rcParams['axes.unicode_minus']=False

读取excel电子表数据(read_excel):

df=pd.read_excel('test.xls')    #默认读取文档中的第一个工作表

获取列名和索引(columns 和  index):

1 data1 = df.columns
2 ls1 = df.columns.tolist() #转换成列表
3 print u"获取到所有的值:\n{0}".format(ls1)
4 data2 = df.index
5 ls2 = df.index.tolist()

获取数据行名称(_stat_axis):

ls3 = df.T._stat_axis.values.tolist()

利用 matplotlib 画图:

饼形图:

 1 plt.title(u'占比分析饼形图',fontsize=20)  #标题
2
3 data = df.groupby(u'产业类型')[u'产业类型'].count()
4 label = data._stat_axis.values.tolist()
5 explode1 = (0, 0, 0,0,0,0,0.75,0)
6 plt.pie(data,explode=explode1,labels=label, autopct="%1.1f%%", shadow=True, startangle=90, radius=10,textprops = {'fontsize':10, 'color':'black'},labeldistance=1.05)
7
8 plt.legend() #显示标签
9 plt.axis("equal") #饼形图为正圆
10 plt.show()

函数:matplotlib.pyplot.pie(x,explode=None,labels=None,colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=None, radius=None, counterclock=True, wedgeprops=None, textprops=None, center=(0, 0), frame=False, rotatelabels=False, *, data=None)
重要参数详情

x :(每一块)的比例,如果sum(x) > 1会使用sum(x)归一化;
labels :(每一块)饼图外侧显示的说明文字;
colors :list, 设置为各部分染色列表,元素一一对应
explode :(每一块)离开中心距离;
startangle :起始绘制角度,默认图是从x轴正方向逆时针画起,如设定=90则从y轴正方向画起;
shadow :在饼图下面画一个阴影。默认值:False,即不画阴影;
labeldistance :label标记的绘制位置,相对于半径的比例,默认值为1.1, 如<1则绘制在饼图内侧;
autopct :控制饼图内百分比设置,可以使用format字符串或者format function
'%1.1f'指小数点前后位数(没有用空格补齐);
pctdistance :类似于labeldistance,指定autopct的位置刻度,默认值为0.6;
radius :控制饼图半径,默认值为1;
counterclock :指定指针方向;布尔值,可选参数,默认为:True,即逆时针。将值改为False即可改为顺时针。
wedgeprops :字典类型,可选参数,默认值:None。参数字典传递给wedge对象用来画一个饼图。例如:wedgeprops={'linewidth':3}设置wedge线宽为3。
textprops :设置标签(labels)和比例文字的格式;字典类型,可选参数,默认值为:None。传递给text对象的字典参数。
center :浮点类型的列表,可选参数,默认值:(0,0)。图标中心位置。
frame :布尔类型,可选参数,默认值:False。如果是true,绘制带有表的轴框架。
rotatelabels :布尔类型,可选参数,默认为:False。如果为True,旋转每个label到指定的角度。

部分来源于:  matplotlib 知识点11:绘制饼图(pie 函数精讲)

线图:

转载来源:Matplotlib.pyplot 常用方法

 1 import numpy as np
2 import matplotlib.pyplot as plt
3
4
5 t = np.arange(0.0, 4.0, 0.1)
6 s = np.sin(np.pi*t)
7 plt.plot(t, s, 'g:v', label = 'sinx')
8
9 plt.legend() # 显示右上角的那个label,即上面的label = 'sinx'
10 plt.xlabel('time (s)') # 设置x轴的label,pyplot模块提供了很直接的方法,内部也是调用的上面当然讲述的面向对象的方式来设置;
11 plt.ylabel('voltage (mV)') # 设置y轴的label;
12 #plt.xlim(-1,3) # 可以自己设置x轴的坐标的范围哦;
13 #plt.ylim(-1.5,1.5)
14 plt.title('About as simple as it gets, folks')
15 plt.grid(True) # 显示网格;
16 plt.xticks(rotation=45)    #X轴文字旋转45°
17 plt.show()

其中

plot()   基本用法:

  lot(x, y) # 画出横轴为x与纵轴为y的图,使用默认的线形与颜色;

  plot(x, y, 'bo') # 用蓝色,且点的标记用小圆,下面会解释哦

  plot(y) # 纵轴用y ,横轴用y的每个元素的坐标,即0,1,2……

  plot(y, 'r+') # 如果其中x或y 为2D的,则会用它的相应的每列来表示(注意是每列)

  plot(x1, y1, 'g^', x2, y2, 'g-') #可以使用多对的x, y, format 对当作变量的,把它们画一个图里;

  对于参数中,常用的format:线的颜色、线的形状、点的标记形状,我们用这三个的时候经常用缩写,它们之间的顺序怎么都可以,如它俩一个意思:’r+–’、’+–r’。如果我们不想缩写的话,可以分别写成如: color=’green’, linestyle=’dashed’, marker=’o’。


  • 线的形状:

  ‘-’ solid line style
  ‘–’ dashed line style
  ‘-.’ dash-dot line style
  ‘:’ dotted line style


  • 点的标记:

  ‘.’ point marker

  ‘,’ pixel marker

  ‘o’ circle marker

  ‘v’ triangle_down marker

  ‘^’ triangle_up marker

  ‘<’ triangle_left marker

  ‘>’ triangle_right marker

  ‘1’ tri_down marker

  ‘2’ tri_up marker

  ‘3’ tri_left marker

  ‘4’ tri_right marker

  ‘s’ square marker

  ‘p’ pentagon marker

  ‘*’ star marker

  ‘h’ hexagon1 marker

  ‘H’ hexagon2 marker

  ‘+’ plus marker

  ‘x’ x marker

  ‘D’ diamond marker

  ‘d’ thin_diamond marker

  ‘|’ vline marker

  ‘_’ hline marker


  • 线的颜色:

  ‘b’ blue
  ‘g’ green
  ‘r’ red
  ‘c’ cyan
  ‘m’ magenta
  ‘y’ yellow
  ‘k’ black
  ‘w’ white

(2020年8月27日更新)

pandas、matplotlib常用命令(收集整理)的更多相关文章

  1. linux 常用命令--------雪松整理

    linux 常用命令--------雪松整理 博客: http://hi.baidu.com/quanzhou722/blog错误在所难免,还望指正!========================= ...

  2. shell常用命令归类整理

    shell 命令整理     bash shell 含有许多功能,因此有许多可用的命令:本文档仅罗列了一些常用命令及其使用频率较高的参数.#本文档仅罗列了一些常用命令及其使用频率较高的参数.#vers ...

  3. FFmpeg 常用命令收集

    FFmpeg 常用命令 合并视频 ffmpeg -i "KTDS-820A_FHD.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts i ...

  4. Mysql常用命令 详细整理版

    Mysql常用命令 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop database na ...

  5. Linux下查找命令(收集整理)

    原文:http://blog.csdn.net/sunstars2009918/article/details/8510878 一.Linux查找文件的相关命令 常 用 命 令 简要中文说明 程序所在 ...

  6. 【Linux】-Ubuntu常用命令吐血整理

    前言 刚刚接触Linux操作系统,真的是各种艰难啊,用个什么东西都得从头开始配置,这个时候才明白从头再来是什么滋味了.自己装了数个数十几次的Centos版本的Linux系统,好不容易争气了一次,跑了起 ...

  7. MySQL数据库常用命令行整理(表格)

    Laplace Kang 2020-03-13T08:33:09Z 2020-03-14T17:35:53Z Sheet1 12480 9 600 600 6 9600 23040 0 0 600 0 ...

  8. phpstorm 快捷键高效助手扩展 常用快捷键收集整理 2018-04-12 16:42:10

    声明: 本文属于原创,未经博主许可,禁止任何形式转载! phpstorm 快捷键整理收集 以及高效复用代码快捷键扩展 常规快捷键大全请结合参考2篇博客: https://blog.csdn.net/y ...

  9. git 常用命令收集

    1. 查看某文件的历史递交记录git log --pretty=oneline 文件名 2. 查看远程仓库信息 git remote show origin 3. 查看用户名和修改用记名: git c ...

  10. windbg学习进阶之——dump分析常用命令收集

    #重要说明 (1) windbg命令分为标准命令,元命令和扩展命令. 标准命令提供最基本的调试功能,不区分大小写.如:bp  g  dt  dv  k等 元命令提供标准命令没有提供的功能,也内建在调试 ...

随机推荐

  1. ASP.NET Core实现自定义中间件的三种方式

    一.什么是中间件 请求处理管道由一系列中间件组件组成.每个组件在 HttpContext 上执行操作,调用管道中的下一个中间件或终止请求. 详情请看另外一篇文章:白话管道中间件 下图是中间件的管道模型 ...

  2. Tomcat集群配置--负载均衡

    Tomcat集群配置学习篇-----分布式应用 现目前基于javaWeb开发的应用系统已经比比皆是,尤其是电子商务网站,要想网站发展壮大,那么必然就得能够承受住庞大的网站访问量:大家知道如果服务器访问 ...

  3. 第十三天笔记Cookie

    第十三天笔记Cookie 计算机重要的四个内容 数据结构 数据存储的结构及逻辑的体现,以及相关数据结构之间的操作(算法) 操作系统 windows(dos命令).linux(指令操作) 计网 网络通信 ...

  4. python3 - Django3.2框架

    提示:web开发已有php.java,而python在这方面,没有优势,python的优势在于:爬虫.人工智能.大数据分析等,python在web开发这方面,没必要掌握:版本:稳定版本:3.2(py3 ...

  5. springcloud(四) - 服务治理Hystrix

    功能介绍 调用下游服务,下游因为超时.异常等原因报错的时候.hystrix保证不会出现整体异常,避免雪崩.主要策略是服务的熔断.降级   应用场景 降级:异常.超时.熔断等情况发生后,不让客户端等待返 ...

  6. eFuse技术

    1. 基本概况及介绍   不同于大多数FPGA使用的SRAM阵列,eFuse一次只有一根熔丝能够被编程,这是该方法的配置能力存在限制范围的原因.但当与日益成熟的内置自测试(BIST)引擎组合使用时,这 ...

  7. Cannot add middleware after an application has started

    This helped: Open the Command Prompt or the Windows PowerShell. Navigate to your Stable Diffusion fo ...

  8. MQTT 发布/订阅模式介绍

    MQTT 发布/订阅模式 发布订阅模式(Publish-Subscribe Pattern)是一种消息传递模式,它将发送消息的客户端(发布者)与接收消息的客户端(订阅者)解耦,使得两者不需要建立直接的 ...

  9. 攻防世界-file_include(绕过base64)

    有简单过滤防护的文件包含  一.源码分析 易知$filename处可能会存在文件包含漏洞.但注意到include了一个./check.php文件,猜测可能有过滤.先不管,于是直接使用普通payload ...

  10. windows 设置网卡跳跃点

    查看路由表route print -4 添加永久路由表:192.168.1.1(网关)route add 0.0.0.0 mask 255.255.255.0 192.168.1.1 metric 1 ...