Распределение тепла Python
Я пытался смоделировать распределение потока в пространстве, но не мог понять, как правильно сделать это в python, используя matplotlib, seaborn, plotly и т. д.
У меня есть 3 переменные
X: от 0 до 0,4 (от 142 штук)
Y: от 0 до 0,45 (с ячейками до 17767 штук)
T: значения, начинающиеся с 300 Кельвинов и распределенные по комнате ( 142x17767)
Чтобы объяснить больше, у меня есть прямоугольная область, которая составляет 142x17767, и я хочу построить тепловое нарушение в каждой точке. Я пробовал тепловую карту и историческую версию seaborn из matplotlib, но эти методы требуют, чтобы размеры x и y имели одинаковую длину.
1 ответ
Я думаю, что тебе нужно pcolormesh
, Вот пример ответа. Вы можете заменить T
ниже ваши фактические T-значения. Причина, по которой вы получаете ошибку, состоит в том, что на такой 2-й карте тепла вам нужно создать сетку из ваших точек x и y.
import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize=(6,6))
X = np.linspace(0, 0.4, 142)
Y = np.linspace(0, 0.45, 17767)
Xmesh, Ymesh = np.meshgrid(X,Y)
T = np.random.randint(300, 1000, Xmesh.shape)
plt.pcolormesh(X, Y, T)
plt.colorbar()
plt.show()