Распределение тепла 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()

Другие вопросы по тегам