matplotlib 绘制散点图时的日期范围选择

bmvo0sr5  于 2023-03-13  发布在  其他
关注(0)|答案(1)|浏览(150)

下面是散点图的代码。
日期范围为1-01-2015到03-01-2022。如何调整代码以仅查看特定日期范围,例如01-01-2015到12-30-2015?

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

df = pd.read_excel('Outliers.xlsx', 'ATL')

print(df.head())
print(df.tail())

fig, ax = plt.subplots(figsize =(10,6,))
ax.scatter(x=df['HDDs'], y = df['UPBU'], c='blue')

plt.xlabel("HDDs")
plt.ylabel("Use Per Billing Unit")
plt.title("LDC HDD Vs. UPBU")
plt.show()

下面是上述脚本的输出:
打印(df.head())

Date HDDs     UPBU
0 2015-01-01 17.0 0.457539
1 2015-01-02 16.5 0.429936
2 2015-01-03  7.3 0.311634 
3 2015-01-04 16.6 0.432595 
4 2015-01-05 26.8 0.703082

打印(df.tail())

Date HDDs     UPBU
2642 2022-03-27 11.6 0.311739
2643 2022-03-28  7.5 0.267713 
2644 2022-03-29  0.2 0.165169 
2645 2022-03-30  0.0 0.118345 
2646 2022-03-31  4.7 0.154248

Scatter plot

bgtovc5b

bgtovc5b1#

您可以过滤日期列以仅显示所需的日期。使用ax.scatter()中的过滤器,以便仅拾取这些日期。更新了以下代码。希望这是您正在寻找的。

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

df = pd.read_excel('Outliers.xlsx', 'ATL')

print(df.head())
print(df.tail())

fig, ax = plt.subplots(figsize =(10,6,))
ax.scatter(x=df[(df['Date'] >= '01-01-2015') & (df['Date'] <= '12-30-2015')]['HDDs'], 
           y = df[(df['Date'] >= '01-01-2015') & (df['Date'] <= '12-30-2015')]['UPBU'], 
           c='blue')

plt.xlabel("HDDs")
plt.ylabel("Use Per Billing Unit")
plt.title("LDC HDD Vs. UPBU")
plt.show()

相关问题