hist
Version 2.8.0
Hist 是一個分析人員友好的 boost-histogram 前端,專為 Python 3.8+ 設計(3.6-3.7 用戶使用舊版本)。看看有什麼新內容。
您可以使用 pip 從 PyPI 安裝此程式庫:
python3 -m pip install " hist[plot,fit] "
如果您不需要繪圖功能,則可以跳過[plot]
和/或[fit]
附加功能。 WebAssembly 目前不支援[fit]
。
Hist 目前提供了 boost-histogram 提供的所有功能,以及以下增強功能:
Hist 用名稱增強了軸:
name=
是描述每個軸的唯一標籤。label=
是一個可選字串,用於繪圖(如果未提供,則預設為name
)。NamedHist
是一個Hist
,它禁用大多數形式的位置訪問,迫使使用者僅使用名稱。 Hist
類透過更簡單的構造增強了bh.Histogram
:
flow=False
是在構造時關閉軸流的快速方法。storage=
可以省略,字串和儲存可以是位置的。data=
可以用現有資料初始化直方圖。Hist.from_columns
可用來使用 DataFrame 或 dict 進行初始化。Hist 支援 QuickConstruct,這是一個免導入建置系統,不需要額外導入:
Hist.new.().().()
。Regular
) 或簡短的 ( Reg
)。data=
)可以放入儲存中。擴充直方圖功能:
.name
和.label
,如軸。.density()
將密度計算為陣列。.profile(remove_ax)
可以將 ND COUNT 直方圖轉換為 (N-1)D MEAN 直方圖。.sort(axis)
支援依分類軸對直方圖進行排序。可以選擇使用一個函數來排序。.fill_flattened(...)
將展平並填充,包括對 AwkwardArray 的支援。.integrate(...)
,它採用與.project
相反的參數。Hist 實作 UHI+; UHI(統一直方圖索引)系統的擴展,專為免導入互動性而設計:
j
後綴切換到存取或切片中的資料座標。j
後綴來重新分類。快速繪圖例程鼓勵探索:
.plot()
提供一維和二維圖(或使用plot1d()
、 plot2d()
).plot2d_full()
顯示圍繞 2D 繪圖的 1D 項目。.plot_ratio(...)
在直方圖和另一個直方圖或可呼叫之間繪製比率圖。.plot_pull(...)
執行拉圖。.plot_pie()
繪製餅圖。.show()
使用 Histoprint 提供了一個很好的 str 列印輸出。堆疊:使用具有相同軸的直方圖組
h.stack(axis)
建立堆疊,使用軸的索引或名稱(理想的是StrCategory
軸)。hist.stacks.Stack(h1, h2, ...)
來創建,或使用from_iter
或from_dict
。.plot()
和.show()
,並帶有名稱(繪圖標籤預設為原始軸資訊)。.project
、 *
、 +
和-
。新模組
intervals
支援頻率覆蓋間隔。筆記本就緒:Hist 在筆記本中具有華麗的表現。
from hist import Hist
# Quick construction, no other imports needed:
h = (
Hist . new . Reg ( 10 , 0 , 1 , name = "x" , label = "x-axis" )
. Var ( range ( 10 ), name = "y" , label = "y-axis" )
. Int64 ()
)
# Filling by names is allowed:
h . fill ( y = [ 1 , 4 , 6 ], x = [ 3 , 5 , 2 ])
# Names can be used to manipulate the histogram:
h . project ( "x" )
h [{ "y" : 0.5j + 3 , "x" : 5j }]
# You can access data coordinates or rebin with a `j` suffix:
h [ 0.3j :, :: 2j ] # x from .3 to the end, y is rebinned by 2
# Elegant plotting functions:
h . plot ()
h . plot2d_full ()
h . plot_pull ( Callable )
從 git checkout 中,使用 nox,或運行:
python -m pip install -e .[dev]
有關設定開發環境的信息,請參閱貢獻指南。
我們要感謝使這個項目成為可能的貢獻者(表情符號鍵):
亨利·施賴納 ? | 劉毅諾 ? | 克里斯·伯爾 | 尼克·阿明 | 愛德華多·羅德里格斯 | 安德烈·諾瓦克 | 馬修·費克特 |
凱爾·克蘭默 | 丹尼爾·安特里姆 | 尼古拉斯·史密斯 | 邁克爾·埃利亞切維奇 | 喬納斯‧埃施勒 |
該項目遵循所有貢獻者規範。
該庫主要由 Henry Schreiner 和 Nino Lau 開發。
這項工作由美國國家科學基金會合作協議 OAC-1836650 (IRIS-HEP) 和 OAC-1450377 (DIANA/HEP) 提供支持。本資料中所表達的任何觀點、發現、結論或建議均為作者的觀點,不一定反映美國國家科學基金會的觀點。