在Scatter Plot中,我想自动填充轴

时间:2017-04-03 08:31:53

标签: python pandas matplotlib

我正在从单个列的文本文件加载数据。我想用这些数据制作一个散点图,但我只有一个轴(加载的数据)。对于我的另一个轴,我想要计算(即0,1,2,3,4,5,...),直到我为每个加载的值都有匹配值。

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

考虑样本文件txt

from io import StringIO
import pandas as pd

txt = """4
5
2
6
1
4
3
6
2
7"""

s = pd.read_csv(StringIO(txt), header=None, squeeze=True)

分配给系列s的默认索引将为0到系列的长度减去1。您可以重置索引以将其放入数据框并相应地进行绘图。

s.reset_index(name='x').plot.scatter('x', 'index')

enter image description here

答案 1 :(得分:1)

如果没有给出x数据,Matplotlib会自动使用y数据的索引。因此,您只需将数据数组提供给绘图函数pyplot.plot(data)

即可
import io
import numpy as np
import matplotlib.pyplot as plt

csv = u"13.7\n12.4\n10.1\n7.4\n3.7\n9.4\n8.2"

a = np.loadtxt(io.StringIO(csv))
plt.plot(a, marker="o", ls="")

plt.xlabel("index")
plt.ylabel("data")

plt.show()

enter image description here