美文网首页
Matplotlib库

Matplotlib库

作者: glRu | 来源:发表于2020-06-16 14:58 被阅读0次

Matplotlib 是 Python 的绘图库

    它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 它也可以和图形工具包一起使用,如 PyQt 和 wxPython

实例:

pyplot绘图区域

pyplot中的plot()函数

pyplot的中文显示

    第一种方法:

    第二种方法

pyplot的文本显示

pyplot的子绘图区域

GridSpec类

pyplot的基础图标函数

pyplot饼图的绘制

pyplot直方图的绘制

pyplot极坐标图的绘制

pyplot散点图的绘制

“引力波的绘制”实例

数据源

    http://python123.1o/dv/grawave.htmi

    http://python123.1o/dv/h1StrainWav

    http://python123.io/dv/l1strain.wav

    http://python123.1o/dv/wftemplatetxt

实例代码:

import numpy as np

import matplotlib.pyplot as plt

from scipy.io import wavfile  # 读取音频文件的库

rate_h, hstrain= wavfile.read(r"H1_Strain.wav","rb")

rate_l, lstrain= wavfile.read(r"L1_Strain.wav","rb")

#reftime, ref_H1 = np.genfromtxt('GW150914_4_NR_waveform_template.txt').transpose()

reftime, ref_H1 = np.genfromtxt('wf_template.txt').transpose() #使用python123.io下载文件

# transpose() 方法是对矩阵进行转置

htime_interval = 1/rate_h

ltime_interval = 1/rate_l

fig = plt.figure(figsize=(12, 6))  # f创建一个12*6的绘图空间

# 丢失信号起始点

htime_len = hstrain.shape[0]/rate_h

htime = np.arange(-htime_len/2, htime_len/2 , htime_interval)

plth = fig.add_subplot(221)

plth.plot(htime, hstrain, 'y')

plth.set_xlabel('Time (seconds)')

plth.set_ylabel('H1 Strain')

plth.set_title('H1 Strain')

ltime_len = lstrain.shape[0]/rate_l

ltime = np.arange(-ltime_len/2, ltime_len/2 , ltime_interval)

pltl = fig.add_subplot(222)

pltl.plot(ltime, lstrain, 'g')

pltl.set_xlabel('Time (seconds)')

pltl.set_ylabel('L1 Strain')

pltl.set_title('L1 Strain')

pltref = fig.add_subplot(212)

pltref.plot(reftime, ref_H1)

pltref.set_xlabel('Time (seconds)')

pltref.set_ylabel('Template Strain')

pltref.set_title('Template')

fig.tight_layout()

plt.savefig("Gravitational_Waves_Original.png")

plt.show()

plt.close(fig)

相关文章

网友评论

      本文标题:Matplotlib库

      本文链接:https://www.haomeiwen.com/subject/xmtsxktx.html