【问题标题】:pandas plot(kind='line') creating scatter plotpandas plot(kind='line') 创建散点图
【发布时间】:2019-12-14 17:18:18
【问题描述】:

我正在尝试用一条线绘制pandasSeries。 这些线产生所示的输出和散点图。

import pandas as pd
print(pd.__version__)
...
print(type(sam))
print(sam)
sam.plot(kind='line');

0.25.3
<class 'pandas.core.series.Series'>
3300    0.87
3301    0.87
3302    0.87
3303    0.87
3304    0.87
Name: A, dtype: float64

<<SCATTER PLOT>>

我无法使用Series.plot 以任何方式创建线图。

正确的做法是什么?

PS:我可以想出一些变通方法,比如创建新的np 数组、列表等。 但我想这应该会立即生效。

PS2:我在 PortableApps 的 Chrome 下使用 Jupyter Lab。 奇怪的是,在实验室的一个选项卡中(很少有东西),上面的线条产生了一个线图,在另一个选项卡中(加载了sklearn),它产生了一个散点图。 我会进一步试验。

【问题讨论】:

  • 给我们一个数据样本:)
  • @Terry - 请查看更新后的 OP(无论如何,我不知道更新有什么帮助......)
  • 使用你的数据和代码,我在 y 轴上得到一条固定在 0.87 处的水平线
  • @Terry - 这就是重点。你得到的就是预期的。那么问题是我应该在哪里解决这个问题......
  • 也许更新熊猫?在我的测试中,我使用了 pandas 0.25.1

标签: python pandas plot


【解决方案1】:

你可以试试:

sam = pd.Series([.87,.87,.87,.87,.87], index=range(3300, 3305))

系列:

3300    0.87
3301    0.87
3302    0.87
3303    0.87
3304    0.87
dtype: float64

线图:

sam.plot()

sam.plot(kind='line') 呈现相同的输出。

【讨论】:

  • 我刚刚用 Jupyter 尝试过,这是可行的,但不确定 OP 是如何获得散点图行为的。
  • 这与OP中发布的基本相同,因此没有澄清问题......
【解决方案2】:

在我对matplotlib 的了解比现在少得多的时候,有一句台词是

plt.rcParams['lines.marker'] = 'o'

我所要做的就是删除它(实际上,我将其替换为 plt.rcParams['scatter.marker'] = 'o')。

【讨论】:

    猜你喜欢
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 2021-03-27
    • 1970-01-01
    • 2019-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多