2
我有一個詞length_of_word |重複字典,我想創建一個直方圖,就像下面鏈接中的那個一樣,只使用python構建的函數no numpy或類似的東西。在Python 3中打印直方圖
http://dev.collabshot.com/show/723400/
請一些指針,至少可以幫我了。
我有一個詞length_of_word |重複字典,我想創建一個直方圖,就像下面鏈接中的那個一樣,只使用python構建的函數no numpy或類似的東西。在Python 3中打印直方圖
http://dev.collabshot.com/show/723400/
請一些指針,至少可以幫我了。
我想你必須有一個dict
看起來像這個,對嗎?
>>> d = {1:1, 2:10, 3:10, 4:6, 5:5, 6:4, 7:2, 8:1}
>>> d
{1: 1, 2: 10, 3: 10, 4: 6, 5: 5, 6: 4, 7: 2, 8: 1}
如果是這樣,我有做的伎倆功能:
>>> def histo(dict_words):
# Get max values, plus delta to ease display
x_max = max(dict_words.keys()) + 2
y_max = max(dict_words.values()) + 2
# print line per line
print '^'
for j in range(y_max, 0, -1):
s = '|'
for i in range(1, x_max):
if i in dict_words.keys() and dict_words[i] >= j:
s += '***'
else:
s += ' '
print s
# print x axis
s = '+'
for i in range(1, x_max):
s += '---'
s += '>'
print s
# print indexes
s = ' '
for i in range(1, x_max):
s += ' %d ' % i
print s
>>> histo(d)
^
|
|
| ******
| ******
| ******
| ******
| *********
| ************
| ***************
| ***************
| ******************
|************************
+--------------------------->
1 2 3 4 5 6 7 8 9
>>>
好,有一個小更多的工作在左邊顯示價值觀和正確格式化數字大於10不有但我認爲這是一個好的開始:-)
你至少要提供一個你的輸入和你的期望輸出的例子。說,從字典和相應的直方圖5條目。 – aaronasterling 2011-01-26 04:51:49