函数图象——在线性坐标系中绘制三角函数图象

本文记述了用 Matplotlib 在线性坐标系中绘制三角函数图象的例子。

代码主体内容如下:

...

def main():

    fig, axs = plt.subplots(1, 3, figsize=(14,4.5))             #1

    axs[0] = configure_axes(axs[0], 'Trigonometric Function\t\t\t' + r'$sine$', 2*np.pi, 1, np.pi, np.pi/2, 1, 1/2)     #2
    x = np.linspace(-2*np.pi, 2*np.pi, 300)
    y = 1/2 * np.sin(2*x + np.pi/3)                     #3
    axs[0].plot(x, y, color='b')
    axs[0].text(3.5, 0.5,  r'$y = \frac{1}{2}sin(2x + \frac{π}{3})$',  color='b', horizontalalignment='left',  verticalalignment='bottom')
    y = np.sin(x)                                       #4
    axs[0].plot(x, y, color='k', linestyle=':')
    axs[0].text(4, -1,  r'$y = sin(x)$',  color='k', horizontalalignment='left',  verticalalignment='top')
                                                    #5

    axs[1] = configure_axes(axs[1], '\t\t\t\t\t\t\t' + r'$cosine$', 4*np.pi, 2, np.pi, np.pi/2, 2, 1)           #2
    x = np.linspace(-4*np.pi, 4*np.pi, 300)
    y = 2 * np.cos(1/2*x - np.pi*2/3)                   #3
    axs[1].plot(x, y, color='r')

    ...

    axs[2] = configure_axes(axs[2], '\t\t\t\t\t\t\t' + r'$tangent$', 3*np.pi, 5, np.pi, np.pi/2, 5, 2.5)        #2
    x1 = np.linspace(-35/12*np.pi, -13/12*np.pi, 100)
    y1 = np.tan(x1*1/2)                                 #3
    x2 = np.linspace(-11/12*np.pi,  11/12*np.pi, 100)
    y2 = np.tan(x2*1/2)
    x3 = np.linspace( 13/12*np.pi,  35/12*np.pi, 100)
    y3 = np.tan(x3*1/2)
    axs[2].plot(x1, y1, x2, y2, x3, y3, color='y')

    ...

    fig.tight_layout()                  #6

    ...


def configure_axes(ax, title, xlimit, ylimit, xmajorunit = 2*np.pi, xminorunit = np.pi, ymajorunit = 1, yminorunit = 1/2):

    ...


if __name__ == '__main__': main()

...

在绘图前,准备一个能放下 1x3 个图象的特定大小的区域(#1)。分别配置三个坐标系(#2),其中内容请参考在线性坐标系中绘制一次函数图象。分别用蓝色、红色和黄色实线绘制正弦函数 y = 1/2 * sin(2 * x + π / 3)、余弦函数 y = 2 * cos(1/2 * x - π * 2/3) 、正切函数 y = tan(1/2 * x) 的图象(#3)以及用黑色点线绘制标准正弦、余弦、正切函数图像(#4),并附上数学表达式说明(#5)。最后调整绘图区域大小以填充整个图象区域(#6)。

图象显示如下:

figure

此代码可在 Matplotlib 3.3.4,Python 3.6.8 环境中运行。完整的代码请参考 [gitee] cnblogs/18630399

更多例子请参考 函数图象数据可视化Matplotlib Gallery

posted @   green-cnblogs  阅读(46)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
点击右上角即可分享
微信分享提示