python数据可视化:编写程序,分别采用面向对象和面向函数两种方式绘制正弦曲线和余弦曲线

2023-11-07

编写程序,分别采用面向对象和面向函数两种方式绘制正弦曲线和余弦曲线

# 面向对象的方式
import numpy as np                
import matplotlib.pyplot as plt    
x_data = np.linspace(-np.pi, np.pi, 256, endpoint=True) 
#设置x轴[-pi,pi]区域256个点,endpoint=True表示是否包含最后一个点
y_sin, y_cos = np.sin(x_data), np.cos(x_data)    
#分别定义正弦、余弦函数
fig = plt.figure()                 
#构建画布对象fig                     
ax = fig.add_subplot(111)       
#在画布对象fig中构建子图(绘图区域)ax 、111  (1行1列1个绘图区域)           
ax.plot(x_data, y_sin)          
#采用折线图plot()函数,绘制图表:正弦函数 (x_data自变量, y_sin应变量)
ax.plot(x_data, y_cos)          
#采用折线图plot()方法,绘制图表:余弦函数 (x_data自变量, y_cos应变量)
plt.show()                      
#展示图表


# 面向函数的方式
import numpy as np
import matplotlib.pyplot as plt
x_data = np.linspace(-np.pi, np.pi, 256, endpoint=True)
#设置x轴[-pi,pi]区域256个点,endpoint=True表示是否包含最后一个点
y_sin, y_cos = np.sin(x_data), np.cos(x_data)
plt.plot(x_data, y_sin) 
# 调用plot()函数,绘制图表:余弦函数 (x_data自变量, y_cos应变量)
plt.plot(x_data, y_cos)
plt.show()
  • 效果图
    在这里插入图片描述

一些知识点:

  1. Matplotlib是Python的一个绘图库,主要用于绘制2D图标的Python库(也可绘制一些3D图表),支持numpy、pandas的数据结构;它是一个面向对象的绘图库,它所绘制的图表元素均对应一个对象;提供与Matlab命令类似的API,方便熟悉Matlab的用户进行开发。

  2. matplotlib官网提供了3种API:

    • pyplot API:是使用pyplot模块开发的接口,需要使用"import matplotlib.pyplot as plt"语句导入pyplot模块。
    • object-oriented API:是面向对象的接口,包含一系列对应图表元素的类,使用时需要先创建画布(Figure类对象),再在该画布添加拥有坐标系统的绘图区域(Axes对象),最后在绘图区域中调用绘图方法绘制图标。
    • pylab API:基本弃用
  3. plot()函数与plot()方法的参数用法是相同的,它们唯一的区别在于plot()函数缺少self参数,可以直接被pyplot模块调用;而plot()方法只能被Axes类的对象调用。

  4. numpy之linspace()函数使用详解

    numpy之linspace()函数使用详解 | w3c笔记 (w3cschool.cn)

  5. fig.add_subplot(111) 前两个表示几行*几列的网格,最后一个表示第几子图

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python数据可视化:编写程序,分别采用面向对象和面向函数两种方式绘制正弦曲线和余弦曲线 的相关文章

随机推荐