在线性坐标系中绘制二次函数图象
创作时间:
作者:
@小白创作中心
在线性坐标系中绘制二次函数图象
引用
1
来源
1.
https://www.cnblogs.com/green-cnblogs/p/18439547
本文介绍了如何使用Matplotlib在Python中绘制二次函数的图像。通过具体的代码示例,展示了如何绘制三个不同类型的二次函数图像(Δ>0、Δ=0、Δ<0),并解释了代码的关键部分。文章内容完整,包含了必要的代码和图像展示,适合对Python绘图感兴趣的读者。
在绘图前,需要准备一个能放下 1x3 个图像的特定大小的区域。分别配置三个坐标系,其中内容请参考在线性坐标系中绘制一次函数图像。绘图时,用蓝色、红色和黄色实线分别绘制 y = 1/3 * x^2 - 4*x 、y = -1/4 * x^2 + 3/2 * x - 9/4、 y = x^2 + 12 * x + 39 这三个二次函数图像,并附上数学表达式说明。最后调整绘图区域大小以填充整个图像区域。
下面是具体的代码实现:
import numpy as np
import matplotlib.pyplot as plt
def configure_axes(ax, title, xlimit, ylimit, xmajorunit=5, xminorunit=1, ymajorunit=5, yminorunit=1):
ax.set_title(title)
ax.set_xlim(-xlimit, xlimit)
ax.set_ylim(-ylimit, ylimit)
ax.set_xticks(np.arange(-xlimit, xlimit+1, xmajorunit))
ax.set_xticks(np.arange(-xlimit, xlimit+1, xminorunit), minor=True)
ax.set_yticks(np.arange(-ylimit, ylimit+1, ymajorunit))
ax.set_yticks(np.arange(-ylimit, ylimit+1, yminorunit), minor=True)
ax.grid(which='both')
ax.axhline(y=0, color='k')
ax.axvline(x=0, color='k')
def main():
fig, axs = plt.subplots(1, 3, figsize=(14,4.5))
axs[0] = configure_axes(axs[0], 'Quadratic Function\t\t\t' + r'$\Delta > 0$', 18, 18, 10, 2, 10, 2)
x = np.linspace(-2.5,14.5,100)
y = 1/3*x**2 - 4*x
axs[0].plot(x, y, color='b')
axs[0].text(-4, 4, r'$y = \frac{1}{3}x^2 - 4x$', color='b', horizontalalignment='right', verticalalignment='bottom')
axs[1] = configure_axes(axs[1], '\t\t\t\t\t\t\t' + r'$\Delta = 0$', 18, 18, 10, 2, 10, 2)
x = np.linspace(-5,11,100)
y = -1/4*x**2 + 3/2*x - 9/4
axs[1].plot(x, y, color='r')
axs[1].text(-6, 4, r'$y = -\frac{1}{4}x^2 + \frac{3}{2}x - \frac{9}{4}$', color='r', horizontalalignment='right', verticalalignment='bottom')
axs[2] = configure_axes(axs[2], '\t\t\t\t\t\t\t' + r'$\Delta < 0$', 18, 18, 10, 2, 10, 2)
x = np.linspace(-9.8,-2.2,100)
y = x**2 + 12*x + 39
axs[2].plot(x, y, color='y')
axs[2].text(-10, 4, r'$y = x^2 + 12x + 39$', color='y', horizontalalignment='right', verticalalignment='bottom')
fig.tight_layout()
if __name__ == '__main__':
main()
此代码可在 Matplotlib 3.3.4,Python 3.6.8 环境中运行。完整的代码请参考[gitee] cnblogs/18439547。更多例子请参考函数图像、数据可视化和Matplotlib Gallery。
热门推荐
收到律师函应该注意什么:了解后果并采取相应措施
太平道为何在东汉时期大行其道?他与道教是什么关系?
花盆里有蜗牛怎么办?六个实用方法轻松解决
一线观察:股份行理财公司如何抢占规模前三?
DeepSeek:关于对《首都在线300846》严重异常波动公告之解读
保费如何合理上涨?上涨幅度有哪些决定因素?
一生要强的“独立女性”:当时坚持买房,现在后悔了吗?
不要给孩子玩声音大的玩具
买房怎样合理加杠杆?这种加杠杆行为有哪些风险控制?
红薯瘦身奇迹背后,健康何在?
柠檬奶酪块:清新美味的下午茶甜点制作教程
特斯拉与超自然现象:科学视角下的“鬼魂”解析
精细化营销执行计划:中小企业实战运营指南
Steam账号怎么估价?
熟地黄的最佳搭配:当归、山茱萸、知母等六种经典配伍
《我的世界》怎么做烟花:从材料准备到特效添加的完整指南
女生工作压力大怎么办?有效缓解压力的策略有哪些?
房贷账单可以延期了!宽限期28天至12个月不等
考驾照退费标准全解析:不同阶段退费政策及注意事项
关羽家族中的隐藏传奇:探索关平、关兴、关索与关银屏的故事
加班费基数的法律规定
登革热病毒研究新进展:从疫情现状到免疫机制
中国移动换号码指南:流程、注意事项与优惠政策全解析
成就不大,口气不小 伊布,从贫民窟到绿茵场的狂傲人生
水泥航母舰桥已升级,歼-35现身水泥航母,令人浮想联翩
摔到头部后如何判断伤情?这几点要当心
百里奚辅佐秦穆公:智慧与仁政共铸西戎霸业
自建房出租应注意哪些事项?
如何运用长短线思维在股市中获取稳定收益?
有哪些科幻爱情电影名字