You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python基于含两个未知数的方程绘制图形?

解决二元方程绘图问题

你的脚本已完成数据准备,但缺少实际的绘图执行代码,同时函数定义里的return语句存在缩进错误,这两个问题导致无法生成图形。以下是修正并补充完整的代码,包含两种常用的可视化方式:

修正后的完整代码

from numpy import exp, sqrt, linspace
from matplotlib import pyplot as plt
from pylab import meshgrid, cm, imshow, contour, clabel, colorbar, axis, title, show

plt.rcParams["figure.figsize"] = [10, 5]
plt.rcParams["figure.autolayout"] = True

# 修正缩进:return需与函数内代码对齐
def f(x, y):
    return (1 / sqrt(x)) * exp(-y / 50) * (1 - exp(-x / 1097) * (2 * exp(-y / (2 * 50)) - 1))

x = linspace(10, 1000, 990)
y = linspace(10, 50, 40)
X, Y = meshgrid(x, y)
Z = f(X, Y)

# 方式1:绘制热力图(直观展示数值分布)
plt.figure()
im = imshow(Z, interpolation='bilinear', origin='lower',
            cmap=cm.jet, extent=[10, 1000, 10, 50])
colorbar(im)
title('热力图:二元函数分布')
plt.xlabel('x')
plt.ylabel('y')
show()

# 方式2:绘制等高线图(清晰展示等值线)
plt.figure()
contour_plot = contour(X, Y, Z, cmap=cm.jet)
clabel(contour_plot, inline=True, fontsize=10)
colorbar(contour_plot)
title('等高线图:二元函数等值线')
plt.xlabel('x')
plt.ylabel('y')
show()

关键修正点说明

  • 缩进修复:Python函数内代码必须缩进,return语句需与函数定义保持一致的缩进层级,否则会触发语法错误。
  • 添加绘图逻辑:通过imshow生成热力图,或contour生成等高线图,同时补充颜色条、坐标轴标签和标题,让图形信息更完整。
  • 范围匹配:extent参数确保热力图的坐标轴范围与你设定的x(10-1000)、y(10-50)完全一致。

内容的提问来源于stack exchange,提问作者Elise Cosenza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 13:15:32