1、案例一

# coding=utf-8
from matplotlib import pyplot as plt
import random # 设置字体相关
from matplotlib import font_manager
my_font = font_manager.FontProperties(fname="D:\\study\\python-数据分析\\阿里汉仪智能黑体.ttf") y = [1, 0, 1, 1, 2, 4, 3, 2, 3, 4, 4, 5, 6, 5, 4, 3, 3, 1, 1, 1]
x = range(11,31) # 设置图形大小
plt.figure(figsize=(20, 8), dpi=80)

# 绘制图形
plt.plot(x, y) # 设置x轴刻度
_xtick_labels = ["{}岁".format(i) for i in x]
plt.xticks(x, _xtick_labels,fontproperties=my_font)
plt.yticks(range(0, 9)) # 标注最大值
plt.annotate('最大值', xy=(23, 6), xytext=(23, 7),
arrowprops=dict(facecolor='black', shrink=0.05),fontproperties=my_font
)
# 标注最小值
plt.annotate('最小值', xy=(12, 0), xytext=(12, 1),
arrowprops=dict(facecolor='black', shrink=0.05),fontproperties=my_font
)
# 绘制网格 alpha网格透明度
plt.grid(alpha=0.5) # 展示
plt.show()

2、案例二

# coding=utf-8
from matplotlib import pyplot as plt
import random # 设置字体相关
from matplotlib import font_manager
my_font = font_manager.FontProperties(fname="D:\\study\\python-数据分析\\阿里汉仪智能黑体.ttf") x = range(0, 120)
y = [random.randint(20, 35) for i in range(120)] plt.figure(figsize=(20, 8), dpi=80)
# 调整x轴的刻度
_x = list(x)
_xtick_labels = ["10点{}分".format(i) for i in range(60)]
_xtick_labels += ["11点{}分".format(i) for i in range(60)] # 取步长,数字和字符串一一对应,数据长度一样
# rotation旋转度数
# fontproperties设置字体
plt.xticks(_x[::3], _xtick_labels[::3], rotation=45, fontproperties=my_font)
plt.plot(x, y) # 添加描述信息
plt.xlabel("时间", fontproperties=my_font)
plt.ylabel("温度 单位(°C)", fontproperties=my_font) # 添加标题
plt.title("气温变化图", fontproperties=my_font)
plt.show()

3、案例三

# coding=utf-8
'''
绘制折线图Demo
'''
from matplotlib import pyplot as plt # x轴(axis)为24小时
x = range(0, 24, 2)
# y轴为13个数据
y = [15, 13, 5, 17, 20, 25, 26, 26, 24, 22, 18, 15] # 设置图片大小
plt.figure(figsize=(20, 8), dpi=80) # 保存图像
# plt.savefig("./气候图.png") # 设置x轴的刻度
# plt.xticks(x)
plt.xticks(range(0, 24, 2)) # xtick_lables = [i/2 for i in range(0, 49)]
# plt.xticks(_xtick_lables[::3]) # 设置y轴的刻度
plt.yticks(range(min(y), max(y), 2))
# 绘图
plt.plot(x, y)
# 展示图像
plt.show()

4、案例四---绘制多个直线图

# coding=utf-8
from matplotlib import pyplot as plt
import random # 设置字体相关
from matplotlib import font_manager
my_font = font_manager.FontProperties(fname="D:\\study\\python-数据分析\\阿里汉仪智能黑体.ttf") y_1 = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
y_2 = [1,0,3,1,2,2,3,3,2,1 ,2,1,1,1,1,1,1,1,1,1] x = range(11,31) #设置图形大小
plt.figure(figsize=(20,8),dpi=80) plt.plot(x,y_1,label="自己",color="#F08080")
plt.plot(x,y_2,label="同桌",color="#DB7093",linestyle="--") #设置x轴刻度
_xtick_labels = ["{}岁".format(i) for i in x]
plt.xticks(x,_xtick_labels,fontproperties=my_font)
# plt.yticks(range(0,9)) #绘制网格
plt.grid(alpha=0.4,linestyle=':') #添加图例
plt.legend(prop=my_font,loc="upper left") plt.grid(alpha=0.5)
#展示
plt.show()

matplotlib之折线图的更多相关文章

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

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

  2. python使用matplotlib绘制折线图教程

    Matplotlib是一个Python工具箱,用于科学计算的数据可视化.借助它,Python可以绘制如Matlab和Octave多种多样的数据图形.下面这篇文章主要介绍了python使用matplot ...

  3. Matplotlib学习---用matplotlib画折线图(line chart)

    这里利用Jake Vanderplas所著的<Python数据科学手册>一书中的数据,学习画图. 数据地址:https://raw.githubusercontent.com/jakevd ...

  4. 06. Matplotlib 2 |折线图| 柱状图| 堆叠图| 面积图| 填图| 饼图| 直方图| 散点图| 极坐标| 图箱型图

    1.基本图表绘制 plt.plot() 图表类别:线形图.柱状图.密度图,以横纵坐标两个维度为主同时可延展出多种其他图表样式 plt.plot(kind='line', ax=None, figsiz ...

  5. python用matplotlib画折线图

    折线图: import matplotlib.pyplot as plt y1=[10,13,5,40,30,60,70,12,55,25] x1=range(0,10) x2=range(0,10) ...

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

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

  7. 【Python】matplotlib绘制折线图

    一.绘制简单的折线图 import matplotlib.pyplot as plt squares=[1,4,9,16,25] plt.plot(squares) plt.show() 我们首先导入 ...

  8. matplotlib系列——折线图

    import numpy as np import matplotlib.pyplot as plt import matplotlib #数据准备 #numpy.linspace(start, st ...

  9. python3绘图示例3(基于matplotlib:折线图等)

    #!/usr/bin/env python# -*- coding:utf-8 -*-from pylab import *from numpy import *import numpy # 数据点图 ...

随机推荐

  1. 利用mybatis-generator自动生成代码(转)

    利用mybatis-generator自动生成代码 mybatis-generator有三种用法:命令行.eclipse插件.maven插件.个人觉得maven插件最方便,可以在eclipse/int ...

  2. @Validated @RequestBody @RequestParam配合使用校验参数

    1.  @Validated @RequestBody 配合使用 两者搭配进行参数的校验,要想自己捕获该异常,需要自定义全局异常处理器 2.  @Validated @RequestParam 配合使 ...

  3. Delphi Opendialog组件

  4. Centos 7安装部署zabbix 3.0LTS

    1.环境准备 OS:CentOS 7.2 64bit Zabbix版本:3.0.12 MySQL版本:5.6 注意:zabbix3.0相关要求 mysql5.0以上版本.apache1.3以上版本.p ...

  5. 02-spring框架—— IoC 控制反转

    控制反转(IoC,Inversion of Control),是一个概念,是一种思想.指将传统上由程序代码直接操控的对象调用权交给容器,通过容器来实现对象的装配和管理. 控制反转就是对对象控制权的转移 ...

  6. 个人小应用服务器安装搭建,HP 360p Gen9 使用winpe安装centos[一]

    以前用aws的时候使用的ec2, 里面可选的windows server搭配umbraco的cms做了自己的个人网站,主要是当年项目需要,使用aws,我也办了国际币种卡,在组里各种联系亚马逊开服务,后 ...

  7. dlopen 加载so库

    #include <stdio.h> #include <dlfcn.h> int main(int argc, char **argv) { void *handle; do ...

  8. ESXi与物理交换机静态链路聚合配置过程中的小陷阱

    作者:陆斌文章来自微信公众号:平台人生 内容简介:ESXi与物理交换机之间配置静态链路聚合时,因为静态链路聚合的特点,在进行down网卡和从虚拟交换机移除网卡的操作时,可能会无法完成故障流量切换,影响 ...

  9. Gym - 102082G What Goes Up Must Come Down (树状数组+贪心)

    题意:有一个长度为n的序列,你每次可以选择两个相邻的元素交换,求把这个序列排成单峰序列的最少交换次数. 方法一:将元素按数值从大到小排序(保存原来的位置),把最大的插在中间,剩下的依次往两边放,依次考 ...

  10. tp6中使用微信支付sdk

    一.下载微信支付sdk 二.将lib文件夹下的文件复制到目录:extend->WxPay 将example文件夹下的WxPay.Config.php文件也复制到:extend->WxPay ...