如果我有一個資料集:
import numpy as np
import matplotlib.pyplot as plt
y = np.array([np.random.randn(10) for k in range(100)])
plt.plot(y)

以及相應的分類值向量:
x = np.array([['nr1', 'nr2'] for k in range(5)]).reshape(10,1)
我如何根據 y 是'nr1'還是來著色'nr2'?如果 pandasplot()函式有一個簡單的方法也可以。
它最好應該是可擴展的,因此 x 中可以有兩個以上的組。
uj5u.com熱心網友回復:
編輯:這已經包含評論并且適用于任意數量的類別。
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
y = np.array([np.random.randn(6) for k in range(100)])
x = np.array([['nr1', 'nr2', 'n3'] for k in range(2)]).reshape(6)
uniques, inverse = np.unique(x, return_inverse=True)
c = mpl.cm.Set1(inverse)
for i in range(y.shape[1]):
plt.plot(y[:,i], color=c[i])

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/461687.html
標籤:Python matplotlib
