用户:记得开心1点-yGo查看:0 回复:0 评论:0 创建时间:2023-06-20T11:44:38
【作品展示】

【作品介绍】
编写兼构思:符海洲(高一)微信交流:lovediaoTang
编写时间:2023年06月20日
原创不易,转载使用请联系
【作品源代码】
import numpy as np
import matplotlib.pyplot as plt # 导入numpy和pyplot库
plt.rcParams['font.sans-serif'] = ['SimHei'] # 支持中文,用于正常显示中文
plt.title('函数图像') # 标题:'函数图像'
a1 = A = 0 #放入初值
a2 = [] #建立空列表
i = eval(input('输入函数的最高次数='))
if i >=0:
print('当前函数:一元', i, '次函数')
x = eval(input('最高次项系数='))
while a1 < i:
a1 = a1+1
a2.append(x) #当a1小于i,则将输入的系数放入列表a2中
if i==a1:
a4 = eval(input("常数项="))
A1 = np.arange(-10, 10, 0.1)
plt.plot(A1, A1-A1, color='k') #画x轴,颜色为'k'
A2 = np.arange(-10, 10, 2) # 两个for语句叠加,解决了无论次数为多少
for a3 in a2: #都可以将函数表达式表达出来
for i1 in range(i, 0, -1):
A = a3*A1**(i1)+A+a4 #第25行是全程序最精彩的地方
plt.xticks(A2) and plt.yticks(A2) # 由于次数的关系,x即使很小,y也能取值取到成千上万
plt.plot(A1, A) # 所以y轴的范围跟随函数取值的变化而变化
A3 = np.arange(np.min(A), np.max(A), np.mean(A)) #确保整个图像的大致趋势能够被画出
plt.plot(A3-A3, A3, color='k') # 画y轴,颜色为'k'
plt.legend(['f(x)', "横轴", '纵轴']) #设置图例
else:
print('第', a1, '项系数请输入 (注意:此项次数为', i-a1, ')')
x = eval(input('系数='))
else:
print('当前函数为:', -i, '次反比例函数')
x = eval(input('系数='))
A1= np.arange(0.01, 1, 0.001) #反比例由于x不能为0,则x范围要重新框定
plt.plot(A1, (x/A1)**(-i))
A2 = np.arange(-1, -0.01, 0.001)
plt.plot(A2, (x/A2)**(-i))
Amin=np.min((x/A2)**(-i))
Amax=np.max((x/A1)**(-i))
plt.xticks(np.arange(-0.8, 0.8, 0.2))
plt.yticks(np.arange(Amin,Amax,2*(Amin+Amax)))
A3=np.arange(Amin,Amax,(Amin+Amax)/4)
A4 = np.arange(-0.8, 0.8, 0.01)
plt.plot(A4, A4-A4, color='k') # 画x轴和y轴,颜色为'k'
plt.plot(A3-A3, A3, color='k')
plt.legend(['f(x)且x>0', 'f(x)且x<0', "横轴", '纵轴'])
plt.show() #显示图形
#编写兼构思:符海洲
#编写时间:2023年/06月/20日
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn