matplotlib 折线图_Matplotlib的折线图

目录:

1、准备工作

2、示例演示

3、添加标签

4、改变线条的风格

5、绘制多线条

6、改变整体的风格

1、准备工作

首先要确保安装好Matplotlib库用pip下载,打开cmd输入pip install matplotlib即可完成下载

2、示例演示

展示的数据

from 

运行结果:

f67e151d7f1a9741556111804b2d8a4e.png

五行代码就生成了一个图,我这里用的是股票代码为000001平安银行近段时间来的股票数据,x轴为日期,y轴为股票价格,调用plot()将数据传入,最后调用show()将图片展示出来,用pycharm做出了的图可以交互(jupyter notebook就不可以交互),就是左下角的那一排按钮,要是你想要保存下来就调用savefig()方法即可保存。

这图也太简单了吧,小编你能不能弄的漂亮点啊,别急这就来

3、添加标签

from matplotlib import pyplot as plt
time = ['2020-03-11', '2020-03-12', '2020-03-13', '2020-03-16', '2020-03-17', '2020-03-18', '2020-03-19',
        '2020-03-20', '2020-03-23', '2020-03-24', '2020-03-25', '2020-03-26', '2020-03-27']
price = [14.69, 14.68, 14.52, 13.75, 13.41, 12.71, 12.23, 12.52, 12.15, 12.61, 12.87, 13.06, 13.15]
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.plot(time, price, label='000001 平安银行')
plt.title('股票走势图')
plt.xlabel('日期')
plt.ylabel('价格')
plt.legend()
plt.show()

运行结果:

b12fb738e510fbe298454d0bd1711d89.png

plt.rcParams['font.sans-serif'] = ['SimHei']这行主要就是让程序能正常显示中文,title()xlabel()ylabel()分别是设置图片标题、给坐标轴加标签

4、改变线条的风格

from matplotlib import pyplot as plt
time = ['2020-03-11', '2020-03-12', '2020-03-13', '2020-03-16', '2020-03-17', '2020-03-18', '2020-03-19',
        '2020-03-20', '2020-03-23', '2020-03-24', '2020-03-25', '2020-03-26', '2020-03-27']
price = [14.69, 14.68, 14.52, 13.75, 13.41, 12.71, 12.23, 12.52, 12.15, 12.61, 12.87, 13.06, 13.15]
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.plot(time, price, color='r', marker='o', linestyle='--', label='000001 平安银行')
plt.title('股票走势图')
plt.xlabel('日期')
plt.ylabel('价格')
plt.legend()
plt.grid(True)
plt.show()

运行结果:

d394780d5fd37739c31eecd1c1f1ad72.png

plot()中可以添加很多参数:颜色:color、点的形状:marker、线条的形状:linestyle、透明度:alpha

5、绘制多线条

在股票中除了价格以外还有很多均线,最常见的就是5天均线

from matplotlib import pyplot as plt
time = ['2020-03-11', '2020-03-12', '2020-03-13', '2020-03-16', '2020-03-17', '2020-03-18', '2020-03-19',
          '2020-03-20', '2020-03-23', '2020-03-24', '2020-03-25', '2020-03-26', '2020-03-27']
price = [14.69, 14.68, 14.52, 13.75, 13.41, 12.71, 12.23, 12.52, 12.15, 12.61, 12.87, 13.06, 13.15]

ma5 = [14.21, 13.814, 13.324, 12.924, 12.604, 12.444, 12.476, 12.642, 12.768]
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.plot(time, price, color='r', marker='o', label='000001 平安银行')
plt.plot(time[-9:], ma5, color='y', marker='o', linestyle='--', label='ma5 5天均线', alpha=0.7)
plt.title('股票走势图')
plt.xlabel('日期')
plt.ylabel('价格')
plt.legend()
plt.grid(True)
plt.show()

运行结果:

343083ba9f5f5848770c9fd18489e027.png

如果你要绘制多天曲线只需要再提供一组关于y轴的数据就好了

6、改变整体的风格

from matplotlib import pyplot as plt
plt.style.use('fivethirtyeight')
time = ['2020-03-11', '2020-03-12', '2020-03-13', '2020-03-16', '2020-03-17', '2020-03-18', '2020-03-19',
          '2020-03-20', '2020-03-23', '2020-03-24', '2020-03-25', '2020-03-26', '2020-03-27']
price = [14.69, 14.68, 14.52, 13.75, 13.41, 12.71, 12.23, 12.52, 12.15, 12.61, 12.87, 13.06, 13.15]

ma5 = [14.21, 13.814, 13.324, 12.924, 12.604, 12.444, 12.476, 12.642, 12.768]
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.plot(time, price, color='r', marker='o', label='000001 平安银行')
plt.plot(time[-9:], ma5, color='y', marker='o', linestyle='--', label='ma5 5天均线', alpha=0.7)
plt.title('股票走势图')
plt.xlabel('日期')
plt.ylabel('价格')
plt.legend()
plt.grid(True)
plt.show()

运行结果;

ec0d550f1be85abd44b1b18c69b7328e.png

这里选择的风格是fivethirtyeight(五三八风格)一种适合于股票显示的风格

可以调用style.available查看有哪些风格,大家可以根据自己的喜好自行挑选

for i in plt.style.available:
    print(i)

运行结果:

8a597dcf2ff13ff350661c089f1a25f2.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值