Как построить несколько диаграмм DataFrame на одной диаграмме?Несколько диаграмм DataFrame Pandas на одном графике
Я хочу построить три верхние оценки (или первую пятерку). Поскольку я знаю 1st> = 2nd> = 3rd, я хочу отобразить первую тройку (или пять) в диаграмме на одной и той же полосе, вместо того, чтобы распространять их в трех (или пяти) барах.
Визуальный эффект будет точно подобен штабелированному стержню, но стержни не складываются друг на друга, а измерены снизу.
UPDATE: @DizietAsahi предложил использовать столбчатую вместо. Я думаю, это самое простое решение. Может ли кто-то предоставить код манипуляции с файлами данных, чтобы получить разницу ниже, пожалуйста?
Исходные данные представлены в виде TID
и Score
, так же как и следующие данные в формате CSV, которые уже отфильтрованы, так как остались только верхние 3. Необработанные данные имеют гораздо больше баллов для одного и того же TID. Задача этого пути состоит в том, что мне также нужно составить счет MEAN, а также три лучших. Я лично считаю, что невозможно манипулировать счетом MEAN, а также тройками в то же время, чтобы получить различия ниже. Поэтому у обоих способов есть проблемы (для меня).
Ниже приведен пример данных в формате CSV:.
TID,Score
06,510
06,472
06,441
07,630
07,619
07,574
08,617
08,589
08,560
09,610
09,595
09,553
10,593
10,550
10,542
11,442
11,404
11,381
В формате DataFrame (только для нескольких DataFrame столбчатых диаграмм случае Для использования столбчатой, создавая кучу случайных чисел как Score
для каждого TID
будет штраф):
Scores = [
{"TID":07,"ScoreRank":1,"Score":834,"Average":690},
{"TID":07,"ScoreRank":2,"Score":820,"Average":690},
{"TID":07,"ScoreRank":3,"Score":788,"Average":690},
{"TID":08,"ScoreRank":1,"Score":617,"Average":571},
{"TID":08,"ScoreRank":2,"Score":610,"Average":571},
{"TID":08,"ScoreRank":3,"Score":600,"Average":571},
{"TID":09,"ScoreRank":1,"Score":650,"Average":584},
{"TID":09,"ScoreRank":2,"Score":644,"Average":584},
{"TID":09,"ScoreRank":3,"Score":618,"Average":584},
{"TID":10,"ScoreRank":1,"Score":632,"Average":547},
{"TID":10,"ScoreRank":2,"Score":593,"Average":547},
{"TID":10,"ScoreRank":3,"Score":577,"Average":547},
{"TID":11,"ScoreRank":1,"Score":479,"Average":409},
{"TID":11,"ScoreRank":2,"Score":445,"Average":409},
{"TID":11,"ScoreRank":3,"Score":442,"Average":409},
{"TID":12,"ScoreRank":1,"Score":370,"Average":299},
{"TID":12,"ScoreRank":2,"Score":349,"Average":299},
{"TID":12,"ScoreRank":3,"Score":341,"Average":299},
{"TID":13,"ScoreRank":1,"Score":342,"Average":252},
{"TID":13,"ScoreRank":2,"Score":318,"Average":252},
{"TID":13,"ScoreRank":3,"Score":286,"Average":252},
{"TID":14,"ScoreRank":1,"Score":303,"Average":257},
{"TID":14,"ScoreRank":2,"Score":292,"Average":257},
{"TID":14,"ScoreRank":3,"Score":288,"Average":257},
{"TID":15,"ScoreRank":1,"Score":312,"Average":242},
{"TID":15,"ScoreRank":2,"Score":276,"Average":242},
{"TID":15,"ScoreRank":3,"Score":264,"Average":242},
{"TID":16,"ScoreRank":1,"Score":421,"Average":369},
{"TID":16,"ScoreRank":2,"Score":403,"Average":369},
{"TID":16,"ScoreRank":3,"Score":398,"Average":369},
{"TID":17,"ScoreRank":1,"Score":479,"Average":418},
{"TID":17,"ScoreRank":2,"Score":466,"Average":418},
{"TID":17,"ScoreRank":3,"Score":455,"Average":418},
{"TID":18,"ScoreRank":1,"Score":554,"Average":463},
{"TID":18,"ScoreRank":2,"Score":521,"Average":463},
{"TID":18,"ScoreRank":3,"Score":520,"Average":463}]
df = pandas.DataFrame(Scores)
Благодаря
было бы возможно предоставить пример dataframe? –
@ShivamGaur, данные образца в CSV, а также формат данных. Благодарю. – xpt
Просто сделайте сложный сюжет, вычисляющий каждый уровень, как разность баллов ниже –