我试图发送到matplotlib的数据有什么问题?

时间:2017-11-13 23:04:54

标签: python matplotlib

我有以下脚本:

dxhid_dim

例如,当我键入或复制并粘贴一个或多个数字时,

import pandas
from collections import Counter
import matplotlib.pyplot as plt

while True:
    data = [int(x) for x in raw_input("Enter the list containing the data: ").split()]
    letter_counts = Counter(data)
    df = pandas.DataFrame.from_dict(letter_counts, orient="index")
    df.plot(kind="bar")
    plt.show()

脚本完美运行并向我显示直方图。但是,当我从输出中粘贴数字时,我从另一个终端窗口中获​​取数字,例如:

 1 4 5 6 3

我第一次输入数据时,效果很好;但是,当我输入第二个时间时,它没有做任何事情,然后我必须再次按回车键。它向我展示了情节,但是当我关闭它时,它会给我以下错误:

  13 13 16 16 16 16 9 9 9 9 9 15 15 15 15 20 20 20 20 20 22 22 22 22 13
  13 13 13 12 12 12 12 12 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15
  15 15 22 22 22 22 22 15 15 15 15 13 13 13 13 13 18 18 18 18 10 10 10
  10 12 12 12 12 12 10 10 10 10 20 20 20 20 20 15 15 15 15 15 15 15 15
  17 17 17 17 17 13

我做错了什么?

1 个答案:

答案 0 :(得分:1)

我不太了解你所描述的行为:当我从你的问题中复制粘贴数字块时,我会得到嵌入式换行符,这会导致raw_input()被多次调用。

该问题的一个可能的解决方法是让程序将空行视为输入结束:以下非常简单的代码接受我的系统上的数字块的复制粘贴(Windows,Python 2.7) :

tidyverse

希望这可能有所帮助。