在Pylab中,如何将函数f(x,y)(从技术上说是一个字段)绘制为颜色梯度?

2024-05-26 20:46:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在尝试绘制一个函数f(x,y),这在技术上是一个向量{},如果我不挑剔的话,它是一个字段。在

情节:

我希望在XY图上绘制,其中f(x,y)表示为颜色渐变。在

例如,在字段的原点附近,f(x,y)将更大,因此颜色更暗!在

感谢任何帮助,我也知道有一些教程,我已经看过了。问题在于,我很难理解为什么它们都使用如下语法:

from something import *或{}

你为什么要这么做,我一直被教导要做:

import numpy
import pylab

然后我很难理解程序的其余部分,因为语法不清楚,而且我找不到答案中黑白相间的教程!在


Tags: 函数fromimportnumpy颜色语法绘制教程
1条回答
网友
1楼 · 发布于 2024-05-26 20:46:27

用户有两个问题:为什么将导入别名,以及如何“绘制”包含两个参数的变量。别名导入的原因是为了使代码更紧凑,因此更易于阅读。包有很好的长名称,不太可能相互冲突。用户有责任在包中保持别名的唯一性。from something import *很方便,但对可维护性不太好,因为它模糊了要导入的内容。为了把它和物理学联系起来,就像写G=w*e^2,然后期望有人能得出“我用G表示能量,w代表质量,e代表光速。”

绘制两个变量的函数:

import numpy as np
import matplotlib.pyplot as plt
def f(x,y):
   "Arbitrary function of two variables for demonstration"
   return np.sinc(x**2 + y**2)

X, Y = np.meshgrid(np.arange(-5, 5, 0.01), np.arange(-5, 5, 0.01))
plt.imshow(f(x, y))
plt.show()

如果您真的想要灰度,请使用plt.imshow(f(x, y), cmap=plt.cm.gray),如果您觉得f(x, y)的大值是亮的而不是暗的,请将f替换为-f。在

相关问题 更多 >

    热门问题