Построение данных из матрицы с различными цветовыми картами - PullRequest
0 голосов
/ 01 апреля 2020

У меня есть матрица 40 на 96 (96 мер за 40 временных шагов), которую я могу построить следующим образом:

import matplotlib.pyplot as plt
t = np.array(range(1,41))
t_rep = np.repeat(t[:, np.newaxis], 40, axis = 1)

plt.figure()
plt.plot(t_rep, dataMatrix, color = [1. , 0.07107927, 0. , 1.])

Тогда все линии будут одного цвета, указанного триплетом RGB. То, что я не хочу делать, это построить 96 наборов данных цветом, который зависит от области под кривой.

У меня есть этот код:

#Normalizes the colormap too match my data
norm = mpl.colors.Normalize(vmin=np.sum(dataMatrix, axis = 0).min(), vmax=np.sum(dataMatrix, axis = 0).max()) 

cmap = cm.hot
plt.figure()
for n in range(0, 96):
    x = np.sum(dataMatrix[:,n])
    color = cm.ScalarMappable(norm=norm, cmap=cmap)
    plt.plot(t, conc_data_plot1[:,n], color = np.array(color.to_rgba(x)), linewidth = 0.5)

И это делает работа, но я не хочу избавляться от for l oop, так как у меня иногда есть наборы данных, которые намного больше, чем 96.

...