首页 > 其他 > 详细

matplotlib画图

时间:2019-07-28 11:15:56      阅读:104      评论:0      收藏:0      [点我收藏+]

matplotlib介绍

Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图 形。 Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,Web应用程序服务器和四个图形用户 界面工具包。

Matplotlib试图让简单的事情变得更简单,让无法实现的事情变得可能实现。 只需几行代码即可生成绘图,直方图, 功率谱,条形图,错误图,散点图等。

为了简单绘图,pyplot模块提供了类似于MATLAB的界面,特别是与IPython结合使用时。 对于高级用户,您可以通 过面向对象的界面或MATLAB用户熟悉的一组函数完全控制线条样式,字体属性,轴属性等。

 

常见图形及特性

折线图:以折线的上升或下降来表示统计数量的增减变化的统计图。

特点:能够显示数据的变化趋势,反映事物的变化情况。(变化)

python code:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# author: imcati
from matplotlib import pyplot as plt
x = range(1,8) # x轴的位置
y = [17, 17, 18, 15, 11, 11, 13]
# 传入x和y, 通过plot画折线图
plt.plot(x, y, color=‘red‘,alpha=0.5,linestyle=‘--‘,linewidth=3)
#plt.plot(x, y, color=‘red‘,alpha=0.5,linestyle=‘dashed‘,linewidth=3)
plt.show()

‘‘‘基础属性设置
color=‘red‘ : 折线的颜色
alpha=0.5 : 折线的透明度(0-1)
linestyle=‘--‘ : 折线的样式
linewidth=3 : 折线的宽度

线的样式
- -- -. :

实线(solid)
短线(dashed)
短点相间线(dashdot)
虚点线(dotted)
‘‘‘ 

输出:

技术分享图片

折点样式:

from matplotlib import pyplot as plt
x = range(1,8) # x轴的位置
y = [17, 17, 18, 15, 11, 11, 13]
# 传入x和y, 通过plot画折线图
plt.plot(x, y, marker=‘o‘)
plt.show()

输出:

技术分享图片

折点形状样式:

技术分享图片

 设置图片大小及保存:

from matplotlib import pyplot as plt
import random

x = range(2, 26, 2)  # x轴的位置
y = [random.randint(15, 30) for i in x]
# 设置图片的大小
‘‘‘
figsize:指定figure的宽和高,单位为英寸;
dpi参数指定绘图对象的分辨率,即每英寸多少个像素,缺省值为80
‘‘‘
# 根据画布对象
plt.figure(figsize=(20, 8), dpi=80)
plt.plot(x, y)  # 传入x和y, 通过plot画图
# plt.show()
# 保存(注意: 要放在绘制的下面,并且plt.show()会释放figure资源,如果在显示图像之后保存图片将只能保存空图片。)
plt.savefig(‘./t1.png‘)
# 图片的格式也可以保存为svg这种矢量图格式,这种矢量图放在网页中放大后不会有锯齿
plt.savefig(‘./t1.svg‘)

绘制x轴和y轴刻度

from matplotlib import pyplot as plt
import random
x = range(2,26,2) # x轴的位置
y = [random.randint(15, 30) for i in x]
plt.figure(figsize=(10,8),dpi=80)
# 设置x轴的刻度
#plt.xticks(x)
# plt.xticks(range(1,25))
# 设置y轴的刻度
plt.yticks(y)
# plt.yticks(range(min(y),max(y)+1))
# 构造x轴刻度标签
x_ticks_label = ["{}:00".format(i) for i in x]
#rotation = 45 让字旋转45度
plt.xticks(x,x_ticks_label,rotation = 45)
# 设置y轴的刻度标签
y_ticks_label = ["{}°C".format(i) for i in range(min(y),max(y)+1)]
#plt.yticks(range(min(y),max(y)+1),y_ticks_label)
# 绘图
plt.plot(x,y)
plt.show()

输出:

技术分享图片

 

 

散点图:用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间是否存在某种关联或总结坐标点的分 布模式。
特点:判断变量之间是否存在数量关联趋势,展示离群点(分布规律)

 

柱状图:排列在工作表的列或行中的数据可以绘制到柱状图中。
特点:绘制连离散的数据,能够一眼看出各个数据的大小,比较数据之间的差别。(统计/对比)

 

直方图:由一系列高度不等的纵向条纹或线段表示数据分布的情况。 一般用横轴表示数据范围,纵轴表示分布 情况。
特点:绘制连续性的数据展示一组或者多组数据的分布状况。(统计)
 
饼图:用于表示不同分类的占比情况,通过弧度大小来对比各种分类。
特点:分类数据的占比情况。(占比)

 

matplotlib画图

原文:https://www.cnblogs.com/imcati/p/11257808.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!