首页 > 解决方案 > 用 Python 绘制眼镜蛇图表

问题描述

这是我想绘制的数据。目的是针对 ABCD 等列绘制第一列(基线日期)...

    Baseline Date   A             B         C           D          E
0   14/08/2020  15/10/2020  15/10/2020  19/11/2020  29/10/2020  13/10/2020
1   21/08/2020  20/03/2021  13/05/2022  10/12/2020  3/12/2020   5/11/2020
2   28/08/2020  10/03/2021  3/05/2022   30/11/2020  23/11/2020  26/10/2020
3   4/09/2020   13/03/2021  6/05/2022   3/12/2020   26/11/2020  29/10/2020
4   11/09/2020  18/03/2021  11/05/2022  8/12/2020   1/12/2020   3/11/2020
5   18/09/2020  21/03/2021  14/05/2022  11/12/2020  4/12/2020   6/11/2020
6   25/09/2020  19/03/2021  12/05/2022  9/12/2020   2/12/2020   4/11/2020
7   2/10/2020   22/03/2021  15/05/2022  12/12/2020  5/12/2020   7/11/2020
8   9/10/2020   28/03/2021  21/05/2022  18/12/2020  11/12/2020  13/11/2020
9   16/10/2020  31/03/2021  24/05/2022  21/12/2020  14/12/2020  16/11/2020
10  23/10/2020  3/04/2021   27/05/2022  24/12/2020  17/12/2020  19/11/2020
11  30/10/2020  9/04/2021   2/06/2022   30/12/2020  23/12/2020  25/11/2020
12  6/11/2020   9/04/2021   2/06/2022   30/12/2020  23/12/2020  25/11/2020

图表应该看起来像这样。比较基线列与 ABCD 等。这种类型的图在 Python 中是否可行?这称为眼镜蛇图表,显示与基线日期的偏差 在此处输入图像描述

我试过这个,越来越近了,看起来不像excel那么好。

figure(num=None, figsize=(30, 16), dpi=80, facecolor='w', edgecolor='k')
baseline_date = cobra_df['Baseline Date']
plt.plot(Col_a, baseline_date, label="A")
plt.plot(Col_b, baseline_date, label="B")
plt.plot(Col_c, baseline_date, label="C")
plt.plot(Col_d, baseline_date, label="D")
plt.xlabel("Date")
plt.ylabel("Bdate")
plt.title("Cobra Chart")
plt.show()

在此处输入图像描述

标签: pythonexcel

解决方案


你可以使用 matplotlib。示例代码:

import matplotlib.pyplot as plt
plt.ylabel("activity date")
plt.xlabel("data date")
plt.plot(data_date_list1, activity_date_list1, color="blue")
plt.plot(data_date_list2, activity_date_list2, color="yellow")
plt.show()

这将几乎完全显示您想要的内容。


推荐阅读