使用数组中的值作为boxplot

时间:2018-03-26 12:47:48

标签: python arrays datetime boxplot

我正在研究Python的练习题,这要求我找到数组的最小值,最大值和中值,而不是在构造盒子图时使用这些值。我正在使用数组“valid_opening_duration_list”,并希望将其转换为我可以用于箱图的形式,但我遇到了一些问题。

import statistics
import numpy as np
import matplotlib.pyplot as plt

print("Maximum Opening Duration is", max(valid_opening_duration_list))
print("Minimun Opening Duration is", min(valid_opening_duration_list))
print('The Median Opening Duration is', statistics.median(valid_opening_duration_list))

scores = valid_opening_duration_list(loc=5, size=100)

fig, ax = plt.subplots(figsize=(7, 5))
ax.boxplot(scores, 0, labels=['Prac test'])
ax.set_ylabel('Scores', fontsize=16)
ax.set_title('Score BoxPlot', fontsize=16)

该程序告诉我它无法调用该对象。有什么方法可以解决这个问题吗?

TypeError                                 Traceback (most recent call last)
<ipython-input-198-a2257e98b110> in <module>()
     11 print('The Median Opening Duration is', statistics.median(valid_opening_duration_list))
     12 
---> 13 scores = valid_opening_duration_list(loc=5, size=100)
     14 
     15 fig, ax = plt.subplots(figsize=(7, 5))

TypeError: 'numpy.ndarray' object is not callable

1 个答案:

答案 0 :(得分:0)

您正在尝试将numpy数组作为函数调用,因此会收到该错误。

因为您正在尝试将valid_opening_duration_list的内容复制到分数。您想使用numpy.copy函数。

将第13行更改为

scores = np.copy(valid_opening_duration_list)

这会将valid_opening_duration_list的内容复制到分数。