【问题标题】:Pandas not correctly plotting data but numpy is熊猫没有正确绘制数据,但 numpy 是
【发布时间】:2018-08-07 07:42:25
【问题描述】:

我正在尝试使用 numpy 和 pandas 绘制相同的数据集,它使用 numpy 但不是 pandas 正确绘制 - 我对两者使用完全相同的代码!

iris = datasets.load_iris()

# numpy version of dataset

X = iris.data[0:49, [0]]
Y = iris.data[0:49, [1]]

# turning numpy array into dataframes

sepal_width = pd.DataFrame(X)
sepal_length = pd.DataFrame(Y)

# plotting numpy array
fig, ax = plt.subplots(1, 1)
ax.scatter(X, Y)
ax.set_xlabel("Petal Length")
ax.set_ylabel("Sepal Length")
plt.show()

# plotting pandas df
fig, ax = plt.subplots(1, 1)
ax.scatter(sepal_length, sepal_width)
ax.set_xlabel("Petal Length pd")
ax.set_ylabel("Sepal Length pd")
plt.show()

Numpy 绘制

绘制的熊猫

因此您可以看到 X 和 Y 轴的缩放比例不同,但它们绘制的是同一个数据集。绘制的熊猫有一个长度小于 2.5 厘米的点,但我的数据集中的所有长度都是 3 或更大。

【问题讨论】:

  • 尝试将ax.scatter(sepal_length, sepal_width) 换成ax.scatter(sepal_width, sepal_length)

标签: python pandas numpy matplotlib scikit-learn


【解决方案1】:

你不认为你反转了 Dataframe 的 X,Y 吗?

X = sepal_width Y = 萼片长度 Numpy:

ax.scatter(X, Y)

熊猫:

ax.scatter(sepal_length, sepal_width)

【讨论】:

  • 这行得通,谢谢!如果它绘制相同的信息,为什么要切换到熊猫?
  • 这不是熊猫。是你在 numpy 和 pandas 绘图之间改变了 X 和 Y 的顺序。
  • 哈哈好吧,是的,我现在看到了。谢谢大家!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-08
  • 1970-01-01
  • 1970-01-01
  • 2016-01-07
  • 2017-10-10
  • 2020-01-14
  • 2017-05-28
相关资源
最近更新 更多