8

我正在尝试使用 python 创建一个简单的基于文本的直方图,但没有导入任何绘图函数,例如 matplot 或 gnuplot。我将从 csv 文件中导入数据以创建该直方图。

4

1 回答 1

15

这样的事情怎么样

import random

def plot(data):
    """
    Histogram data to stdout
    """
    largest = max(data)
    scale = 50. / largest
    for i, datum in enumerate(data):
        bar = "*" * int(datum * scale)
        print "%2d: %s (%d)" % (i, bar, datum)

data = [ random.randrange(100) for _ in range(20) ]
plot(data)

打印这样的东西

 0: ************************ (48)
 1: ************************************************** (99)
 2: *********************************** (71)
 3: ******************************************** (88)
 4: ********** (21)
 5: ************************************* (74)
 6: ********************************* (67)
 7: *************************** (54)
 8: ************************************************* (98)
 9: *************** (31)
10: *********** (23)
11: ****************************** (61)
12: ********** (20)
13: **************** (33)
14: **** (8)
15: **************************** (57)
16: ***************************** (59)
17:  (1)
18: ************************ (48)
19: *** (6)
于 2012-05-26T07:02:28.803 回答