其他分享
首页 > 其他分享> > 白话解读matplotlib用法-折线图

白话解读matplotlib用法-折线图

作者:互联网

白话解读matplotlib用法-折线图

前情提要

白话解读matplotlib用法-通用函数和柱状图白话解读matplotlib用法-直方图白话解读matplotlib用法-在柱子上添加数据

大家好,我是W

前言:在前面三篇文章中我们看了直方图、柱状图,接下来就要看折线图了。

折线图

折线图介绍和使用场景

折线图顾名思义是通过坐标轴中的点连接成线来绘制出来的图,他体现的是同一个事物在不同时间段的数量、质量的变化情况,其对比的对象时同一个目标在不同情况下的变化趋势。所以在看折线图的时候主要看的是变化,在绘制的时候也要把变化的趋势体现出来。

使用场景

  1. 某市一天之中不同时刻的温度变化情况
  2. 某河流域近三十年的水位变化情况
  3. 30年内黄金价格的变化情况
  4. 某市10年间房屋平均价格变化情况

实例讲解(代码复制可用)

画出一个折线图很简单,跟柱状图一样只需要调用plt.plot(),把x、y轴数据丢进去就可以显示出来了。

import random
import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['SimHei']  # 显示中文
plt.rcParams['axes.unicode_minus'] = False  # 显示负号

# 随机出y轴的数字 10个
y = [random.uniform(20, 35) for i in range(10)]
x = range(10)

plt.plot(x, y)
plt.show()

效果:
在这里插入图片描述

只要再加上一些label和title就可以做出效果不错的折线图了。

那么plot方法里还有什么参数呢?点开_axes.py就可以看到plot的方法,文档比较长,我就不一一复制了,捡几个常用的、通用的参数来讲解。

>>> plot(x, y)        # plot x and y using default line style and color
这个方法使用x,y展示数据,并且线条和颜色都是默认的

>>> plot(x, y, 'bo')  # plot x and y using blue circle markers
plot使用x,y的数据,并且将数据展示成蓝色圆圈的样子,没有线连接点

在这里插入图片描述

>>> plot(y)           # plot y using x as index array 0..N-1
直接丢y轴的数据,而x轴从0~n-1

在这里插入图片描述

>>> plot(y, 'r+')     # ditto, but with red plusses
plot从0~n-1展示数据,并且数据点用红色的+号表示,跟上面的蓝色圆圈对应

在这里插入图片描述

plt.plot(x, y, 'go--', linewidth=2, markersize=12)
# 第三个位置参数表示线的展示方式,'go--'表示一个圆点来打坐标,坐标间的线用虚线表示
# linewdith=:表示线的宽度
# markersize=:表示坐标点的打点大小

在这里插入图片描述
在这里插入图片描述

plt.plot(x, y, color='orange', marker='o', linestyle='dashed', linewidth=2, markersize=12)
# x、y表示位置参数
# color=:表示折线图中折线和点的颜色
# marker=:表示折线图中打点的方式
**Markers**打点方式文档全介绍

    =============    ===============================
    character        description
    =============    ===============================
    ``'.'``          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 x号
    ``'D'``          diamond marker 转了45度的实心正方形
    ``'d'``          thin_diamond marker 菱形◇
    ``'|'``          vline marker 垂线|
    ``'_'``          hline marker 下换线_


# linestyle=:表示线的样式
**Line Styles**

    =============    ===============================
    character        description
    =============    =============================== 
    ``'-'``          solid line style 实线
    ``'--'``         dashed line style 长虚线
    ``'-.'``         dash-dot line style 长虚+点线
    ``':'``          dotted line style 虚线
    =============    ===============================

在这里插入图片描述

值得一提的是,上面的marker和linestyle可以一起用,但是二者不能一起跟fmt用,因为位置参数fmt是对线和点的一些固定组合,若用了marker和linestyle即表示你对点线做了设置,就别用fmt。

plt.plot(y, 'r+')

在这里插入图片描述
ok,到这里折线图的参数都学完了,其他的都是配合pyplot的一些常见方法使用在之前的文章里也讲了。

由于我手头上没有合适的制作折线图的需求,所以就不做一个完整的的图了,总的来说折线图使用还是很简单的,只要了解参数就行。

Alian_W 发布了12 篇原创文章 · 获赞 0 · 访问量 601 私信 关注

标签:plot,plt,白话,matplotlib,marker,折线图,实心
来源: https://blog.csdn.net/Alian_W/article/details/104464054