Допустим, у меня есть следующий фрейм данных, и я хочу, чтобы время по оси X, а VLS и ID по оси Y.но я хочу сгруппировать идентификаторы строк, чтобы увидеть идентификаторы строк с разделителями и соответствующие им «vls».до сих пор я использовал 'groupby' '
df = pd.DataFrame({'vls': [ -22.0390625, -22.03515625, -27.0, -15.99609375, -10.984375, -12.9765625, -12.97265625, -19.9609375,-13.96484375, -19.95703125, -13.953125, -19.94921875, -21.9453125, -11.94140625, -21.9375, -21.93359375, -16.92578125, -13.921875, -12.91796875, -19.9140625, -10.91015625, -10.90625, -19.90234375, -10.8984375], 'id' : [1,2,3,4,5,4,5,5,5,4,3,3,4,4,4,2,1,5,5,3,5,2,5,5], 'time' : [51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74]})
g1 = df.groupby(["id"])
for i, data in g1:
plt.plot(df.time, df.vls.values, label = i, linestyle=':', marker = 'o')
plt.plot(df.time, df.id.values, linestyle=':', marker = 'o')
plt.legend()
, но мой вывод такой:
но я бы хотелполучить 5 отдельных строк для идентификатора (должно быть 5 параллельных строк) и 5 строк для «vls», который не связан последовательно, но основан на столбце «id».как то так: