Подтвердить что ты не робот

Сделайте 2D-графический сюжет с помощью matplotlib

Я получил следующие данные из некоторых вычислений:

x, y, temp

где x и y - координаты точки в двумерном поле размеров 10x10. Интервал равен 0,1. Таким образом, существует 10000 различных точек, и полученный файл выглядит следующим образом:

0.0 0.0 5.6
0.1 0.0 3.2
0.2 0.0 4.1
...
9.9 9.9 2.1

Я хотел бы подготовить вид 2D-графика с matplotlib с разрешением 100x100 пикселей, где каждый пиксель получает цвет (цвета радуги идут от красного до фиолетового от минимального до максимального значения третьего столбца) в соответствии с значение третьего столбца, и данные считываются из этого файла. Интересно, что лучше всего подходит для этого с matplotlib

4b9b3361

Ответ 1

На основе того, как выглядит ваш x, y, temp-тройки упорядочены (перечислены в строках), вы можете просто изменить столбец "temp".

например.

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm

x,y,temp = np.loadtxt('data.txt').T #Transposed for easier unpacking
nrows, ncols = 100, 100
grid = temp.reshape((nrows, ncols))

plt.imshow(grid, extent=(x.min(), x.max(), y.max(), y.min()),
           interpolation='nearest', cmap=cm.gist_rainbow)
plt.show()

hsv - это цветовая палитра "радуга", на которую вы ссылались. Изменить: вы, вероятно, действительно хотели matplotlib.cm.gist_rainbow. matplotlib.cm.hsv возвращается к красному внизу. См. Здесь: https://matplotlib.org/users/colormaps.html для списка цветовых карт.

Если ваши x, y, temp triplets на самом деле не упорядочены, вам нужно будет восстановить свои очки. Я показал пример этого в моем ответе на ваш предыдущий вопрос.

enter image description here