软件工程日报(4.24)
8-3 【Python0027】函数图形绘制
分数 10
作者 doublebest
单位 石家庄铁道大学
【题目描述】设
,
,
,其中
,完成下列操作:
(1)在同一坐标系下用不同的颜色和线型绘制y1、y2和y3三条曲线;
(2)在同一绘图框内以子图形式绘制y1、y2和y3三条曲线。
【练习要求】请给出源代码程序和运行测试结果,源代码程序要求添加必要的注释。
代码:
import numpy as np
import matplotlib.pyplot as plt
# 定义函数
def y1(x):
return x**2
def y2(x):
return np.cos(2*x)
def y3(x):
return y1(x)*y2(x)
# 创建x值范围
x_values = np.linspace(0, 10, 1000)
# (1)在同一坐标系下用不同的颜色和线型绘制 y1、y2 和 y3 三条曲线
fig, ax = plt.subplots()
ax.plot(x_values, y1(x_values), color='blue', linewidth=2, label='y1=x^2')
ax.plot(x_values, y2(x_values), color='red', linewidth=2, label='y2=cos(2x)')
ax.plot(x_values, y3(x_values), color='green', linewidth=2, label='y3=y1*y2')
ax.set_xlabel('x-axis')
ax.set_ylabel('y-axis')
ax.set_title('Function Graphs')
ax.legend()
plt.show()
# (2)在同一绘图框内以子图形式绘制 y1、y2 和 y3 三条曲线
fig, axs = plt.subplots(nrows=3, ncols=1, sharex=True)
axs[0].plot(x_values, y1(x_values), color='blue', linewidth=2, label='y1=x^2')
axs[0].set_title('y1=x^2')
axs[1].plot(x_values, y2(x_values), color='red', linewidth=2, label='y2=cos(2x)')
axs[1].set_title('y2=cos(2x)')
axs[2].plot(x_values, y3(x_values), color='green', linewidth=2, label='y3=y1*y2')
axs[2].set_title('y3=y1*y2')
for ax in axs.flat:
ax.set_yticks(np.arange(-1, 11, 1))
for ax in axs.flat:
ax.label_outer()
plt.show()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律