Python 为具有比较的函数创建网格网格

Python 为具有比较的函数创建网格网格,python,numpy,Python,Numpy,我正在尝试为以下函数绘制曲面图 def G(X): if X[0]<X[1]: return 1 else: return 2 这给了我一个错误: 包含多个元素的数组的真值不明确。使用a.any()或a.all() 在做了一些搜索后,我意识到问题在于在函数G中进行比较,并与网格网格同步。(像这样的东西) 但我不知道如何解决这个问题。 我非常感谢您在这个问题上的帮助我不知道这是否是您想要的输出,但我认为您应该保持简单: import nump

我正在尝试为以下函数绘制曲面图

def G(X):
    if X[0]<X[1]:
        return 1
    else:
        return 2
这给了我一个错误:
包含多个元素的数组的真值不明确。使用a.any()或a.all()

在做了一些搜索后,我意识到问题在于在函数
G
中进行比较,并与网格网格同步。(像这样的东西)

但我不知道如何解决这个问题。

我非常感谢您在这个问题上的帮助

我不知道这是否是您想要的输出,但我认为您应该保持简单:

import numpy as np
import plotly
import plotly.graph_objects as go


def G(X,Y):
    r = [[]]
    for i in range(0,len(X)):
        r.append([])
        for j in range(0, len(Y)):
            if X[i] < Y[j]:
                r[i].append(1)
            else:
                r[i].append(2)
    return r


x_values=np.linspace(-5,5,100)
y_values=np.linspace(-5,+5,100)
F_values=G(x_values,y_values)


trace=go.Surface(x=x_values,y=y_values,z=F_values)
data=[trace]
fig=go.Figure(data=data)
fig.show()
将numpy导入为np
绘声绘色地导入
导入plotly.graph_对象作为go
def G(X,Y):
r=[]]
对于范围(0,len(X))中的i:
r、 追加([])
对于范围(0,len(Y))内的j:
如果X[i]

import numpy as np
import plotly
import plotly.graph_objects as go


def G(X,Y):
    r = [[]]
    for i in range(0,len(X)):
        r.append([])
        for j in range(0, len(Y)):
            if X[i] < Y[j]:
                r[i].append(1)
            else:
                r[i].append(2)
    return r


x_values=np.linspace(-5,5,100)
y_values=np.linspace(-5,+5,100)
F_values=G(x_values,y_values)


trace=go.Surface(x=x_values,y=y_values,z=F_values)
data=[trace]
fig=go.Figure(data=data)
fig.show()