matplotlib:最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATLAB,模仿MATLAB构建

基本使用:

  • x和y的长度必须一致
  • figure()方法用来设置图片大小
  • x,y轴的刻度用可迭代对象进行设置,步长影响刻度的密集程度
 from matplotlib import pyplot as plt

 x = range(2, 26, 2)
y = [15, 13, 14.5, 17, 20, 25, 26, 26, 24, 22, 18, 15] #设置图片大小
plt.figure(figsize=(16, 8), dpi=80) # 设置x轴的刻度,步长决定x轴的密集程度,也可以用列表推导式(涉及到小数的时候就要用列表了)
plt.xticks(range(2, 26, 2)) # 等同于:[x for x in range(2, 26, 2)]
plt.yticks(range(min(y), max(y)+1)) # 设置y轴的刻度,这样设置比较合适 plt.plot(x, y) # 绘图
plt.savefig('./t1.png') # 保存
plt.show() # 展示图形

题目:如果列表a表示10点到12点的每一分钟的气温,绘制折线图观察每分钟气温的变化
a = [random.randint(20, 35) for i in range(120)]

  • matplotlib库默认不支持中文,需要配置,下面是其中一种方法
  • 刻度设置为字符串的时候,字符串列表必须与原数字刻度列表长度一致
 import random
from matplotlib import pyplot as plt
import matplotlib # windows和linux可以这样让其支持中文
font = {
'family': 'MicroSoft YaHei',
'weight': 'bold',
}
matplotlib.rc('font', **font) # 如果列表a表示10点到12点的每一分钟的气温,绘制折线图观察每分钟气温的变化
# a = [random.randint(20, 35) for i in range(120)]
x = range(120)
y = [random.randint(20, 35) for i in range(120)] plt.figure(figsize=(20, 8), dpi=80) # 设置图片大小 # 调整x轴的刻度
_xtick_label = ['10点{}分'.format(i) for i in range(60)]
_xtick_label += ['11点{}分'.format(i) for i in range(60)]
# 取步长,数字和字符串一一对应,数据的长度一样,原先第一个参数对应的数字变为第二个参数的字符串,rotation使字符串旋转90度
plt.xticks(list(x)[::5], _xtick_label[::5], rotation=45) # 转化为列表,列表可以取步长,两个参数的长度必须一致 # 添加描述信息
plt.xlabel('时间')
plt.ylabel('温度/单位(摄氏度)')
plt.title('10点到12点每分钟气温的变化情况') plt.plot(x, y)
plt.show()

matplotlib库的基本使用与折线图的更多相关文章

  1. 最牛逼android上的图表库MpChart(二) 折线图

    最牛逼android上的图表库MpChart二 折线图 MpChart折线图介绍 MpChart折线图实例 MpChart效果 最牛逼android上的图表库MpChart(二) 折线图 最近工作中, ...

  2. 使用matplotlib绘图(一)之折线图

    # 使用matplotlib绘制折线图 import matplotlib.pyplot as plt import numpy as np # 在一个图形中创建两条线 fig = plt.figur ...

  3. Matplotlib中plot画点图和折线图

    引入: import matplotlib.pyplot as plt 基本语法: plt.plot(x, y, format_string, **kwargs) x:x轴数据,列表或数组,可选 y: ...

  4. 【D3.js】Focus + Context 折线图

    利用D3.js库实现Focus+Context的折线图.读取data.tsv文件数据 index.html <!DOCTYPE html> <meta charset="u ...

  5. python中matplotlib画折线图实例(坐标轴数字、字符串混搭及标题中文显示)

    最近在用python中的matplotlib画折线图,遇到了坐标轴 "数字+刻度" 混合显示.标题中文显示.批量处理等诸多问题.通过学习解决了,来记录下.如有错误或不足之处,望请指 ...

  6. Python开发【模块】:matplotlib 绘制折线图

    matplotlib 1.安装matplotlib ① linux系统安装 # 安装matplotlib模块 $ sudo apt-get install python3-matplotlib # 如 ...

  7. matplotlib的使用--折线图--入门

    目录 matplotlib应用介绍 一天天气变化图 两小时随机温度图 中文显示问题 个人交往统计图 多人交往统计图 总结 介绍: 举个例子(一天天气变化图): 假设一天中每隔两个小时(range(2, ...

  8. pyhton matplotlib可视化图像基础(二维函数图、柱状图、饼图、直方图以及折线图)

    //2019.07.22pyhton中matplotlib模块的应用pyhton中matplotlib是可视化图像库的第三方库,它可以实现图像的可视化,输出不同形式的图形1.可视化图形的输出和展示需要 ...

  9. 数据可视化基础专题(十一):Matplotlib 基础(三)常用图表(一)折线图、散点图、柱状图

    1 折线图 折线图主要用于表现随着时间的推移而产生的某种趋势. cat = ["bored", "happy", "bored", &quo ...

随机推荐

  1. node中的koa2

    创建koa2工程 首先,我们创建一个目录hello-koa并作为工程目录用VS Code打开.然后,我们创建app.js,输入以下代码: // 导入koa,和koa 1.x不同,在koa2中,我们导入 ...

  2. python 获取数字在内存的内容

    #coding=utf- from struct import pack,unpack byte=pack('f',1.5) print(byte) print([i for i in byte]) ...

  3. 关于centos6版本执行程序报错:libc.so.6: version GLIBC_2.14 not found的解决

    执行后程序报错: libc.so.6: version GLIBC_2.14 not found 这种情况是因为当前服务器glibc的版本比较低造成的(不出意外是glibc_2.12是最高版本): 1 ...

  4. 丰桥运单打印windows/linux环境安装(原)

    Linux ①linux下安装jdk1.8,执行命令:yum -y install java ②创建文件夹sf-service将csim_waybill_print_service_V1.0.3.ja ...

  5. Java数组分配内存空间

    分配内存空间 数组名=new 数据类型[数组长度]: new关键字用来实现为数组或对象分配内存 数组具有固定的长度.获取数组的长度: 数组名.length 定义数组+分配内存空间 数据类型[]数组名= ...

  6. 新版iTunes connect上传iOS应用

    http://www.brianjcoleman.com/tutorial-distribute-apps-using-new-itunes-connect/ Recently Apple updat ...

  7. ansible-playbook的YAML语法学习

    YAML:可以将你打算对多机器的批量操作放到一个文件中,顺序执行,可以根据机器做到根据机器信息判断执行,其他命令执行结果判断执行. YAML有着严格的层级要求,稍微有个缩进问题就会无法运行,所以学习过 ...

  8. Flutter移动电商实战 --(12)首页导航区域编写

    1.导航单元素的编写 从外部看,导航是一个GridView部件,但是每一个导航又是一个上下关系的Column.小伙伴们都知道Flutter有多层嵌套的问题,如果我们都写在一个组件里,那势必造成嵌套严重 ...

  9. 同源策略和Ajax跨域访问

    1. 什么是同源策略 理解跨域首先必须要了解同源策略.同源策略是浏览器上为安全性考虑实施的非常重要的安全策略.    何谓同源:        URL由协议.域名.端口和路径组成,如果两个URL的协议 ...

  10. 从数组中找出所有组合为s的数

    java版本 package numCombine; /** * 从数组中找出所有组合为s的数 * @author root * */ public class NumComberAll { publ ...