下面是我的数据框。每个中心可以有不同的状态
Center Month Start State Cost Cost FACTOR
376 1/1/2022 NC 1035.44608 1098.82707
376 2/1/2022 SC 1098.82707 1407.55259
890 3/1/2022 NC 1407.55259 1356.45088
890 4/1/2022 GA 1356.45088 1305.31729
376 5/1/2022 GA 1305.31729 1466.9539
890 9/1/2022 NC 2148.07146 2024.72621
376 10/1/2022 NC 2024.72621 1859.82234
754 11/1/2022 SC 1859.82234 1520.82405
754 12/1/2022 NC 1520.82405 1528.37079
754 1/1/2023 GA 1528.37079 516.421
我尝试使用海运线子图来绘制成本和成本因子,使用循环使用枚举,通过传递 Dataframe 列(中心和状态)作为参数。但所有3个子批次都给出相同的结果。
以下代码给出了3个具有相同图形值的子图。
我期待以下内容
- 3行子批次,按“中心”显示“成本”和“成本系数”
1.显示每个中心和州组合的“成本”和“成本系数”的线路子标段
import matplotlib.pyplot as plt
import seaborn as sns
center = df_test.CENTER.unique()
fig, ax = plt.subplots(nrows=3, ncols=1, figsize=(20, 12))
for i, col in enumerate(center):
xp = df_test['MONTH_START']
yp = df_test['COST']
Yp = df_test['COST_FACTOR']
sns.lineplot(x=xp, y=yp,data=col,ax=ax[i])
sns.lineplot(x=xp, y=Yp,data=col,ax=ax[i])
ax[i].legend([f'center {col}'])
1条答案
按热度按时间qlfbtfca1#
如果我理解正确的话,你正试图为每个中心绘制3个图......要做到这一点,你需要改变循环,每次都要过滤数据,这样你就只得到特定的中心。另外,需要在图例和标题方面做一些调整。更新了下面的代码。希望这是你正在寻找的......
输出图