Я пытаюсь построить простую трехмерную поверхность (только для тестирования). Мне кажется, что поверхность не соответствует матрице данных (определяемой как сумма двух входных векторов с использованием функции Numpy add.outer()).
Вот код Python:
Я пытаюсь построить простую трехмерную поверхность (только для тестирования). Мне кажется, что поверхность не соответствует матрице данных (определяемой как сумма двух входных векторов с использованием функции Numpy add.outer()). Вот код Python: [code]import numpy as np import matplotlib.pyplot as plt from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg from matplotlib import cm import tkinter as tk
max_Z = np.max(Z) # Find the index of the maximum Z value max_index = np.unravel_index(np.argmax(Z, axis=None), Z.shape) print("max Z=", max_Z) print("Indices:", max_index) # Plot the surface fig, ax = plt.subplots(subplot_kw={"projection": "3d"}) ax.plot_surface(X, Y, Z, cmap=cm.turbo, linewidth=0, antialiased=True) ax.yaxis.set_major_locator(plt.MaxNLocator(10)) # Limits the number of ticks to 5 ax.set_xlabel("X-axis", linespacing=3.2) ax.set_ylabel("Y-axis", linespacing=3.1)
# Start the tkinter loop root.mainloop() [/code] Максимальное значение Z равно 90 с индексами X=0 (где X=50) и Y=4 (где Y=40). На графике самая высокая точка поверхности находится в точках X=4 и Y=4.