Python Matplotlib:创建直方图

时间:2017-04-04 14:27:50

标签: python matplotlib

编写读取测试文件“T1”内容的代码,并用10,000随机字典的随机字典记录婴儿床与“T1”翻译之间的最小汉明距离。使用matplotlib.pyplot.hist绘制结果的直方图。

我已经有了记录最小汉明距离的功能,翻译了“T1”,并且还制作了随机词典,但我不知道如何使用它来使用matplotlib为10,000个字典制作直方图。

我在想

plt.hist(min_ham_dist("crib",trans_cipher(T1,rand_dict())))

应该在某处使用,因为这些是我的函数的名称。

1 个答案:

答案 0 :(得分:-1)

您必须生成最小汉明距离值的数组或列表。例如(在Jupyter中测试):

import random
import matplotlib.pyplot as plt

##### This block is only dummy methods so that is compatible with your example
def rand_dict(): return None
def trans_cipher(a, b): return None
def min_ham_dist(a, b): return random.randint(0, 1000)
T1 = None
#####

arr = [min_ham_dist("crib",trans_cipher(T1,rand_dict())) for i in range(10000)] # This is the important point
plt.hist(arr, bins=20)
plt.show()

在这种情况下,我使用List Comprehension(PEP 202)来快速构建随机值列表。结果应该是这样的:

dummy histogram using matplotlib hist method