python - 使用 Matplotlib 创建具有定义的箱和高度的对数直方图
问题描述
我正在尝试绘制从 MCNP 输出的一些中子通量能谱结果。我对如何使用这个答案适当地设置权重有了一个好主意。这是我目前正在使用的数据。
Intensity = [0.0, 61798.50000000001, 18032.899999999998, 27729.300000000003, 16493.0, 20837.0, 27507.299999999996, 34675.899999999994, 102999.0, 135864.0, 250667.99999999997] #Fluxes
Energy = [0.0, 1e-07, 1e-06, 1e-05, 0.0001, 0.001, 0.01, 0.1, 1.0, 10.0, 20.0] #Energy MeV
plt.hist(energy, weights=intensity, log=True)
plt.show()
当我绘制这个时,只显示三个条形图。由于每个 bin 的数量级,直方图似乎缺少一些值。有没有一种简单的方法可以将 bin 也设置为对数?
编辑:
我试过包括ax.set_xscale('log')
这是情节目前的样子。
我不确定为什么我的权重只用于创建三个箱,而且高度似乎与任何强度值都不匹配。想法?
谢谢!
解决方案
推荐阅读
- java - 如何更改擦除或更新文本、时间或输出文本
- scala - Spark 数据框列名无法识别
- node.js - 在 heroku 上部署 MERN 会导致意外错误
- javascript - 我可以使用引导弹出框显示带有标题(文本和图像)和正文(文本)的内容吗?
- drop-down-menu - 如何使用 MS Word 下拉列表来指定 INCLUDETEXT 的范围?
- android - android错误找不到类JobSchedular
- java - 如何使用 JNA(打印机和作业)从 WinspoolUtil 和 Winspool 获取 JobInfo2?
- groovy - 为什么在 JSR223 PreProcessor 中替换 POST 参数会在后续迭代中将其删除?
- php - 将数据插入数据库 CodeIgniter 3.x
- xss - HackerOne 0级网站如何做XSS