白话解读matplotlib用法-折线图
作者:互联网
白话解读matplotlib用法-折线图
前情提要
白话解读matplotlib用法-通用函数和柱状图、白话解读matplotlib用法-直方图、白话解读matplotlib用法-在柱子上添加数据
大家好,我是W
前言:在前面三篇文章中我们看了直方图、柱状图,接下来就要看折线图了。
折线图
折线图介绍和使用场景
折线图顾名思义是通过坐标轴中的点连接成线来绘制出来的图,他体现的是同一个事物在不同时间段的数量、质量的变化情况,其对比的对象时同一个目标在不同情况下的变化趋势。所以在看折线图的时候主要看的是变化,在绘制的时候也要把变化的趋势体现出来。
使用场景
- 某市一天之中不同时刻的温度变化情况
- 某河流域近三十年的水位变化情况
- 30年内黄金价格的变化情况
- 某市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