在线性坐标系中绘制二次函数图象
创作时间:
作者:
@小白创作中心
在线性坐标系中绘制二次函数图象
引用
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。
热门推荐
预算执行中,如何实时跟踪进度并识别潜在偏差?
如何在高智商的基础上实现合理的财富增长?这种财富增长方式有哪些挑战?
房子烂尾了可以申请停贷吗
如何编写家谱字辈?详解家谱字辈制定的原则与步骤
企业为员工购买商业保险全攻略:种类选择、会计处理与税务筹划
2025年储能产业布局:千亿级市场蓄势待发
如何投诉软件开发问题?这份指南手把手教你维护权益
注册电气工程师资格证能提升多少薪资待遇
如何为外地户口人员购买保险?购买时需要注意哪些问题?
杭州SPA私人订制:探寻独特养生特点
玉米黄素与叶黄素的关系及对护眼的帮助
膜的隔热效果和耐用性如何?这些特性对车内舒适度和维护成本有何影响?
在家增肌的完整指南:初學者必知的訓練與營養秘訣
玉器所蕴含的文化象征:探讨其深远的历史意义与独特价值
玻璃污渍的去除技巧有哪些?这些技巧如何保持车窗的清晰度?
甲午海战为什么会失败
老年人可以长期喝蛋白粉吗
车子如果没有违章年检可以让别人代办吗
西塘古镇旅游攻略:一票制95元,11处景点任你游
图论入门:基本概念、表示方法与遍历算法详解
word解除密码限制编辑怎么办(word解锁编辑密码)
干扰素的功效与作用
伤口怎么愈合的快
巨蟹和什麼星座最配?解析巨蟹座與其他星座的最佳配對
股权转让一定要本人到场吗
什么是高压电力
如何在文档中使用正确的格式提升阅读体验?
用经济学思维看单边代理:效率与信任的最优解
如何有效进行bug检测?最全指南在这里!
杏仁酸的功效与作用