MAY*_*MAY 4 python matplotlib python-2.7
我正在尝试绘制直方图,但图形窗口中没有显示任何内容。我的代码如下:
import numpy as np
import matplotlib.pyplot as plt
values = [1000000, 1525097, 2050194, 1095638, 1620736, 2145833, 1191277, 1716375, 1286916, 1382555]
plt.hist(values, 10, histtype = 'bar', facecolor = 'blue')
plt.ylabel("Values")
plt.xlabel("Bin Number")
plt.title("Histogram")
plt.axis([0,11,0,220000])
plt.show()
Run Code Online (Sandbox Code Playgroud)
任何帮助将非常感激...
你混淆了直方图是什么。可以使用给定数据生成的直方图如下所示。
直方图基本上计算有多少给定值落在给定范围内。
您为axis() 函数提供了不正确的参数。最终值是2200000您错过了一个零。你也交换了论点。首先是 x 轴的限制,然后是 Y 轴的限制。这是修改后的代码:
import numpy as np
import matplotlib.pyplot as plt
values = [1000000, 1525097, 2050194, 1095638, 1620736, 2145833, 1191277, 1716375, 1286916, 1382555]
plt.hist(values, 10, histtype = 'bar', facecolor = 'blue')
plt.ylabel("Values")
plt.xlabel("Bin Number")
plt.title("Histogram")
plt.axis([0,2200000,0,11])
plt.show()
Run Code Online (Sandbox Code Playgroud)
这是生成的直方图:
我终于实现了...
这是代码:
import numpy as np
import matplotlib.pyplot as plt
values = [1000000, 1525097, 2050194, 1095638, 1620736, 2145833, 1191277, 1716375, 1286916, 1382555]
strategy = [1,2,3,4,5,6,7,8,9,10]
value = np.array(values)
strategies = np.array(strategy)
plt.bar(strategy, values, .8)
plt.ylabel("Values")
plt.xlabel("Bin Number")
plt.title("Histogram")
plt.axis([1,11,0,2200000])
plt.show()
Run Code Online (Sandbox Code Playgroud)