为什么 Pandas 使用 csv 或 xlsx 数据时绘图看起来不同?

Why does Pandas Plot looks different when using csv or xlsx data?

我有两个数据完全相同的数据集,但以相同方式绘制时它们看起来不同。一个是 .xlsx 文件,一个是 .csv 文件。

这是两个代码: 对于 CSV:

import numpy as np
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
from sklearn.cluster import KMeans

daten = pd.read_csv(r"Path\Übungsdaten.csv", header=0, sep=";")


print("Total rows: {0}".format(len(daten)))
print(daten.columns)

plt.scatter(daten['InsuredValue'], daten['Policy'])
plt.xlim(2500000)
plt.ylim(100100)
plt.show()

对于 xlsx:


import numpy as np
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
from sklearn.cluster import KMeans

daten = pd.read_excel(r"Path\Übungsdaten.xlsx")


print("Total rows: {0}".format(len(daten)))

plt.scatter(daten['InsuredValue'],daten['Policy'] )

plt.xlim(2500000)
plt.ylim(100100)
plt.show()

这是两个情节:

csv 与 plt.xlim(2500000) plt.ylim(100100)

和无限制的 csv:

最后是 .xlsx 图:

我的问题首先是,为什么前两个地块的底部有一个黑条? (我猜这是“InsuredValue”的每个值)以及如何将 csv plo 形成为与 xlsx 图相同的比率?

非常感谢

我必须使用以下代码将“InsuredValue”列转换为 int:

daten.astype({'InsuredValue':'int'})