数据分析——matplotlib的用法
Matplotlib是一个强大的Python绘图和数据可视化的工具包。数据可视化也是我们数据分析的最重要的工作之一,可以帮助我们完成很多操作,例如:找出异常值、必要的一些数据转换等。完成数据分析的最终结果也许就是做一个可交互的数据可视化
安装方式: pip install matplotlib
引用方法:import matplotlib.pyplot as plt
一、plot函数(绘制折线图)
- 线型linestyle(-,-.,--,..)
- 点型marker(v,^,s,*,H,+,X,D,O,...)
- 颜色color(b,g,r,y,k,w,...)
# 解决乱码问题(中文不显示)
plt.rcParams['font.sans-serif'] = ['SimHei']
x = [1,2,3]
y = [2,4,9] plt.figure(figsize=(20,6)) #设置画布的大小 plt.title('标题', fontsize=20, color='red') #设置标题
plt.xlabel('x轴', fontsize=15) #设置x轴名称
plt.ylabel('y轴', fontsize=15) #设置y轴名称 # plt.plot?
# plt.plot(x,y, color='green', marker='v', linestyle='--')
plt.plot(x, y) plt.show()

图像标注
| 方法 | 描述 | |
|---|---|---|
| plt.title() | 设置图像标题 | |
| plt.xlabel() | 设置x轴名称 | |
| plt.ylabel() | 设置y轴名称 | |
| plt.xlim() | 设置x轴范围 | |
| plt.ylim() | 设置y轴范围 | |
| plt.xticks() | 设置x轴刻度 | |
| plt.yticks() | 设置y轴刻度 | |
| plt.legend() | 设置曲线图例 |
plt.plot([0,3,9,15,30],linestyle = '-.',color = 'r',marker = 'o',label="A")
plt.plot([1,3,16,23,30],[30,23,13,25,30],label='B')
plt.title("Title") # 标题
plt.xlabel('X') # x轴名称
plt.ylabel('Y') # y轴名称 plt.xticks(np.arange(0,30,2)) # x轴刻度
plt.xlim(-0.2,10,2) # x轴范围
plt.legend() # 曲线图标
plt.show()

支持的图类型
| 函数 | 说明 | |
|---|---|---|
| plt.plot(x,y,fmt) | 折线图 | |
| plt.boxplot(data,notch,position) | 箱型图 | |
| plt.bar(left,height,width,bottom) | 柱状图 | |
| plt.barh(width,bottom,left,height) | 横向柱状图 | |
| plt.polar(theta,r) | 极坐标系 | |
| plt.pie(data,explode) | 饼图 | |
| plt.psd(x,NFFT=256,pad_to,Fs) | 功率谱密度图 | |
| plt.specgram(x,NFFT=256,pad_to,F) | 谱图 | |
| plt.cohere(x,y,NFFT=256,Fs) | X-Y相关性函数 | |
| plt.scatter(x,y) | 散点图 | |
| plt.step(x,y,where) | 步阶图 | |
| plt.hist(x,bins,normed) | 直方图 |
二.柱状图
x = movies.index #索引值
y = movies.values #数据值 plt.figure(figsize=(15,6)) #设置画布大小 plt.bar(x, y, color='blue') #柱状图用bar
plt.title('每个国家或者地区的电影数量') plt.xlabel('国家或地区', fontsize=20)
plt.ylabel('电影数量', fontsize=20)
plt.xticks(rotation=90, fontsize=15) #x轴数据旋转90度 # plt.text?
for a,b in zip(x,y):
plt.text(a, b+100, b, ha='center') #柱状图上面的文字 plt.show()

三.饼图
饼图是计算某一范围内数据的百分比,那么先要切分统计每个范围内的数据百分比
先切分,使用cut
data = pd.cut(s.astype('float'), [0,60,90,110,1000]).value_counts()
使用pie做饼状图
x = data.index
y = data.values plt.figure(figsize=(10,6))
plt.title('电影时长分布图')
patchs, l_text, p_text = plt.pie(y, labels=x, autopct='%0.2f%%', colors='bgry', startangle=90) for i in p_text:
i.set_size(15)
i.set_color('w') #饼状图内百分比样式设计 for l in l_text:
l.set_size(20)
l.set_color('r') #饼状图外范围设计 plt.show()
四.保存图表
plt.savefig('123.pdf')
数据分析——matplotlib的用法的更多相关文章
- matplotlib基本用法-【老鱼学matplotlib】
本文介绍一下matplotlib的最基本用法. 这次我们要显示一个线性方程的直线. 首先要引入matplotlib库,一般是用plt这个简写的,我们就按照大多数人的惯例来进行命名: import ma ...
- python 数据分析 Matplotlib常用图表
Matplotlib绘图一般用于数据可视化 常用的图表有: 折线图 散点图/气泡图 条形图/柱状图 饼图 直方图 箱线图 热力图 需要学习的不只是如何绘图,更要知道什么样的数据用什么图表展示效果最好 ...
- Python数据分析-Matplotlib图标绘制
Matplotlib介绍 Matplotlib是一个强大的Python绘图和数据可视化的工具包. Matplotlib的主要功能 Matplotlib是python中的一个包,主要用于绘制2D图形(当 ...
- 博学谷-数据分析matplotlib
博学谷-数据分析 python数学学科的基础 机器学习课程的基础 1.1 介绍 1.2 jupyter和conda 1.3 matplotlib from matplotlib import pypl ...
- 数据分析 - Matplotlib
简介 Matplotlib是一个强大的Python绘图和数据可视化的工具包.数据可视化也是我们数据分析的最重要的工作之一,可以帮助我们完成很多操作,例如:找出异常值.必要的一些数据转换等.完成数据分析 ...
- 数据分析-numpy的用法
一.jupyter notebook 两种安装和启动的方式: 第一种方式: 命令行安装:pip install jupyter 启动:cmd 中输入 jupyter notebook 缺点:必须手动去 ...
- Python数据分析中Groupby用法之通过字典或Series进行分组
在数据分析中有时候需要自己定义分组规则 这里简单介绍一下用一个字典实现分组 people=DataFrame( np.random.randn(5,5), columns=['a','b','c',' ...
- 数据分析-Matplotlib:绘图和可视化
学习路线 简介 简单绘制线形图 plot函数 支持图类型 保存图表 1.简介 Matplotlib是一个强大的Python绘图和数据可视化的工具包.数据可视化也是我们数据分析的最重要的工作之一,可以帮 ...
- matplotlib 高级用法实例--共享x轴
http://localhost:8888/notebooks/duanqs/matplotlib_advanced_example.ipynb 我不会弄呀, 刚才从matplotlib文档里吧示例用 ...
随机推荐
- learning scasl notes
接收类型参数的类和特质是“泛型”的,但是它们生成的类型是"参数化". ”泛型“的意思是我们用一个泛化的类或特质来定义许许多多具体的类型. 如果说S是类型T的子类型,那么Queue[ ...
- requestLayout() improperly called by xxxxxxxxxxxxxxxxxxx ScrollViewContainer 问题
当scrollview内的内容更改大小时,Scrollview不会自行调整大小.效果是,当内容变小时,内容将留在原来的位置,当内容变大时,无法看到.仅当ScrollView位于作为MasterDeta ...
- lettcode 上的几道哈希表与链表组合的数据结构题
目录 LRU缓存 LFU缓存 全O(1)的数据结构 lettcode 上的几道哈希表与链表组合的数据结构题 下面这几道题都要求在O(1)时间内完成每种操作. LRU缓存 LRU是Least Recen ...
- Android入门教程(二)
Hello World 项目 首先当我们启动Android Studio的虚拟机时,可以看到第一个项目Hello World,那么虚拟机中的Hello World!是如何书写的呢? 看看虚拟机运行结果 ...
- mysql 获取数学成绩最高以及最低的同学
mysql> select * from test; +----+----------+-------+-----------+ | id | name | score | subject | ...
- avalon $computed不起作用?
computed写的个数,应该是只能一个的,之前写了两个,一个是空,一个里面有数据,那个有数据的不起作用,但是在有数据的里面写一个一个console.log就会起作用,所以将多余的空的computed ...
- D3.js的v5版本入门教程(第十二章)—— D3.js中各种精美的图形
D3.js的v5版本入门教程(第十二章) D3中提供了各种制作常见图形的函数,在d3的v3版本中叫布局,通过d3.layout.xxx,来新建,但是到了v5,新建一个d3中基本的图形的方式变了(我也并 ...
- 导入eclipse有Unbound classpath variable: 'M2_REPO报错的解决方法
Eclipse maven of the project reported in Unbound classpath variable: 'M2_REPO /**/***/***. jar' But ...
- GPU性能越来越强大,为何直到现在还是不能取代CPU?
从思路上说,GPU相当于火车,一个车头带几十节车厢,一下子把成千上万吨货全给你拉目的地:CPU相当于汽车,拉货旅游样样能干.因此,如果单纯比运力,一列火车比得过成百上千辆汽车:但如果几百人有几百个 ...
- [web前端] react router4.0 登录后返回之前浏览页面(回到来源页)
本文链接:https://blog.csdn.net/zeroyulong/article/details/81911704困扰了好久的问题,最终还是在官方文档上找到了答案(看英文文档真心难受啊~~) ...