Documentation ¶
Overview ¶
Package rhist contains the interfaces and definitions of ROOT types related to histograms and graphs.
Index ¶
- func NewAxis(name string) *taxis
- type Axis
- type Graph
- type GraphErrors
- type H1
- type H1D
- func (h *H1D) Array() rcont.ArrayD
- func (*H1D) Class() string
- func (h *H1D) Entries() float64
- func (h *H1D) MarshalROOT(w *rbytes.WBuffer) (int, error)
- func (h *H1D) MarshalYODA() ([]byte, error)
- func (h *H1D) NbinsX() int
- func (*H1D) RVersion() int16
- func (h *H1D) Rank() int
- func (h *H1D) SumW() float64
- func (h *H1D) SumW2() float64
- func (h *H1D) SumW2s() []float64
- func (h *H1D) SumWX() float64
- func (h *H1D) SumWX2() float64
- func (h *H1D) UnmarshalROOT(r *rbytes.RBuffer) error
- func (h *H1D) UnmarshalYODA(raw []byte) error
- func (h *H1D) XAxis() Axis
- func (h *H1D) XBinCenter(i int) float64
- func (h *H1D) XBinContent(i int) float64
- func (h *H1D) XBinError(i int) float64
- func (h *H1D) XBinLowEdge(i int) float64
- func (h *H1D) XBinWidth(i int) float64
- type H1F
- func (h *H1F) Array() rcont.ArrayF
- func (*H1F) Class() string
- func (h *H1F) Entries() float64
- func (h *H1F) MarshalROOT(w *rbytes.WBuffer) (int, error)
- func (h *H1F) MarshalYODA() ([]byte, error)
- func (h *H1F) NbinsX() int
- func (*H1F) RVersion() int16
- func (h *H1F) Rank() int
- func (h *H1F) SumW() float64
- func (h *H1F) SumW2() float64
- func (h *H1F) SumW2s() []float64
- func (h *H1F) SumWX() float64
- func (h *H1F) SumWX2() float64
- func (h *H1F) UnmarshalROOT(r *rbytes.RBuffer) error
- func (h *H1F) UnmarshalYODA(raw []byte) error
- func (h *H1F) XAxis() Axis
- func (h *H1F) XBinCenter(i int) float64
- func (h *H1F) XBinContent(i int) float64
- func (h *H1F) XBinError(i int) float64
- func (h *H1F) XBinLowEdge(i int) float64
- func (h *H1F) XBinWidth(i int) float64
- type H1I
- func (h *H1I) Array() rcont.ArrayI
- func (*H1I) Class() string
- func (h *H1I) Entries() float64
- func (h *H1I) MarshalROOT(w *rbytes.WBuffer) (int, error)
- func (h *H1I) MarshalYODA() ([]byte, error)
- func (h *H1I) NbinsX() int
- func (*H1I) RVersion() int16
- func (h *H1I) Rank() int
- func (h *H1I) SumW() float64
- func (h *H1I) SumW2() float64
- func (h *H1I) SumW2s() []float64
- func (h *H1I) SumWX() float64
- func (h *H1I) SumWX2() float64
- func (h *H1I) UnmarshalROOT(r *rbytes.RBuffer) error
- func (h *H1I) UnmarshalYODA(raw []byte) error
- func (h *H1I) XAxis() Axis
- func (h *H1I) XBinCenter(i int) float64
- func (h *H1I) XBinContent(i int) float64
- func (h *H1I) XBinError(i int) float64
- func (h *H1I) XBinLowEdge(i int) float64
- func (h *H1I) XBinWidth(i int) float64
- type H2
- type H2D
- func (h *H2D) Array() rcont.ArrayD
- func (*H2D) Class() string
- func (h *H2D) MarshalROOT(w *rbytes.WBuffer) (int, error)
- func (h *H2D) MarshalYODA() ([]byte, error)
- func (h *H2D) NbinsX() int
- func (h *H2D) NbinsY() int
- func (*H2D) RVersion() int16
- func (h *H2D) Rank() int
- func (h *H2D) SumWXY() float64
- func (h *H2D) SumWY() float64
- func (h *H2D) SumWY2() float64
- func (h *H2D) UnmarshalROOT(r *rbytes.RBuffer) error
- func (h *H2D) UnmarshalYODA(raw []byte) error
- func (h *H2D) XAxis() Axis
- func (h *H2D) XBinCenter(i int) float64
- func (h *H2D) XBinContent(i int) float64
- func (h *H2D) XBinError(i int) float64
- func (h *H2D) XBinLowEdge(i int) float64
- func (h *H2D) XBinWidth(i int) float64
- func (h *H2D) YAxis() Axis
- func (h *H2D) YBinCenter(i int) float64
- func (h *H2D) YBinContent(i int) float64
- func (h *H2D) YBinError(i int) float64
- func (h *H2D) YBinLowEdge(i int) float64
- func (h *H2D) YBinWidth(i int) float64
- type H2F
- func (h *H2F) Array() rcont.ArrayF
- func (*H2F) Class() string
- func (h *H2F) MarshalROOT(w *rbytes.WBuffer) (int, error)
- func (h *H2F) MarshalYODA() ([]byte, error)
- func (h *H2F) NbinsX() int
- func (h *H2F) NbinsY() int
- func (*H2F) RVersion() int16
- func (h *H2F) Rank() int
- func (h *H2F) SumWXY() float64
- func (h *H2F) SumWY() float64
- func (h *H2F) SumWY2() float64
- func (h *H2F) UnmarshalROOT(r *rbytes.RBuffer) error
- func (h *H2F) UnmarshalYODA(raw []byte) error
- func (h *H2F) XAxis() Axis
- func (h *H2F) XBinCenter(i int) float64
- func (h *H2F) XBinContent(i int) float64
- func (h *H2F) XBinError(i int) float64
- func (h *H2F) XBinLowEdge(i int) float64
- func (h *H2F) XBinWidth(i int) float64
- func (h *H2F) YAxis() Axis
- func (h *H2F) YBinCenter(i int) float64
- func (h *H2F) YBinContent(i int) float64
- func (h *H2F) YBinError(i int) float64
- func (h *H2F) YBinLowEdge(i int) float64
- func (h *H2F) YBinWidth(i int) float64
- type H2I
- func (h *H2I) Array() rcont.ArrayI
- func (*H2I) Class() string
- func (h *H2I) MarshalROOT(w *rbytes.WBuffer) (int, error)
- func (h *H2I) MarshalYODA() ([]byte, error)
- func (h *H2I) NbinsX() int
- func (h *H2I) NbinsY() int
- func (*H2I) RVersion() int16
- func (h *H2I) Rank() int
- func (h *H2I) SumWXY() float64
- func (h *H2I) SumWY() float64
- func (h *H2I) SumWY2() float64
- func (h *H2I) UnmarshalROOT(r *rbytes.RBuffer) error
- func (h *H2I) UnmarshalYODA(raw []byte) error
- func (h *H2I) XAxis() Axis
- func (h *H2I) XBinCenter(i int) float64
- func (h *H2I) XBinContent(i int) float64
- func (h *H2I) XBinError(i int) float64
- func (h *H2I) XBinLowEdge(i int) float64
- func (h *H2I) XBinWidth(i int) float64
- func (h *H2I) YAxis() Axis
- func (h *H2I) YBinCenter(i int) float64
- func (h *H2I) YBinContent(i int) float64
- func (h *H2I) YBinError(i int) float64
- func (h *H2I) YBinLowEdge(i int) float64
- func (h *H2I) YBinWidth(i int) float64
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Axis ¶
type Axis interface { root.Named XMin() float64 XMax() float64 NBins() int XBins() []float64 BinCenter(int) float64 BinLowEdge(int) float64 BinWidth(int) float64 }
Axis describes a ROOT TAxis.
type Graph ¶
Graph describes a ROOT TGraph
Example ¶
package main import ( "fmt" "log" "go-hep.org/x/hep/groot" "go-hep.org/x/hep/groot/rhist" ) func main() { f, err := groot.Open("../testdata/graphs.root") if err != nil { log.Fatal(err) } defer f.Close() obj, err := f.Get("tg") if err != nil { log.Fatal(err) } g := obj.(rhist.Graph) fmt.Printf("name: %q\n", g.Name()) fmt.Printf("title: %q\n", g.Title()) fmt.Printf("#pts: %d\n", g.Len()) for i := 0; i < g.Len(); i++ { x, y := g.XY(i) fmt.Printf("(x,y)[%d] = (%+e, %+e)\n", i, x, y) } }
Output: name: "tg" title: "graph without errors" #pts: 4 (x,y)[0] = (+1.000000e+00, +2.000000e+00) (x,y)[1] = (+2.000000e+00, +4.000000e+00) (x,y)[2] = (+3.000000e+00, +6.000000e+00) (x,y)[3] = (+4.000000e+00, +8.000000e+00)
func NewGraphFrom ¶
NewGraphFrom creates a new Graph from 2-dim hbook data points.
type GraphErrors ¶
type GraphErrors interface { Graph // XError returns two error values for X data. XError(i int) (float64, float64) // YError returns two error values for Y data. YError(i int) (float64, float64) }
GraphErrors describes a ROOT TGraphErrors
Example ¶
package main import ( "fmt" "log" "go-hep.org/x/hep/groot" "go-hep.org/x/hep/groot/rhist" ) func main() { f, err := groot.Open("../testdata/graphs.root") if err != nil { log.Fatal(err) } defer f.Close() obj, err := f.Get("tge") if err != nil { log.Fatal(err) } g := obj.(rhist.GraphErrors) fmt.Printf("name: %q\n", g.Name()) fmt.Printf("title: %q\n", g.Title()) fmt.Printf("#pts: %d\n", g.Len()) for i := 0; i < g.Len(); i++ { x, y := g.XY(i) xlo, xhi := g.XError(i) ylo, yhi := g.YError(i) fmt.Printf("(x,y)[%d] = (%+e +/- [%+e, %+e], %+e +/- [%+e, %+e])\n", i, x, xlo, xhi, y, ylo, yhi) } }
Output: name: "tge" title: "graph with errors" #pts: 4 (x,y)[0] = (+1.000000e+00 +/- [+1.000000e-01, +1.000000e-01], +2.000000e+00 +/- [+2.000000e-01, +2.000000e-01]) (x,y)[1] = (+2.000000e+00 +/- [+2.000000e-01, +2.000000e-01], +4.000000e+00 +/- [+4.000000e-01, +4.000000e-01]) (x,y)[2] = (+3.000000e+00 +/- [+3.000000e-01, +3.000000e-01], +6.000000e+00 +/- [+6.000000e-01, +6.000000e-01]) (x,y)[3] = (+4.000000e+00 +/- [+4.000000e-01, +4.000000e-01], +8.000000e+00 +/- [+8.000000e-01, +8.000000e-01])
Example (AsymmErrors) ¶
package main import ( "fmt" "log" "go-hep.org/x/hep/groot" "go-hep.org/x/hep/groot/rhist" ) func main() { f, err := groot.Open("../testdata/graphs.root") if err != nil { log.Fatal(err) } defer f.Close() obj, err := f.Get("tgae") if err != nil { log.Fatal(err) } g := obj.(rhist.GraphErrors) fmt.Printf("name: %q\n", g.Name()) fmt.Printf("title: %q\n", g.Title()) fmt.Printf("#pts: %d\n", g.Len()) for i := 0; i < g.Len(); i++ { x, y := g.XY(i) xlo, xhi := g.XError(i) ylo, yhi := g.YError(i) fmt.Printf("(x,y)[%d] = (%+e +/- [%+e, %+e], %+e +/- [%+e, %+e])\n", i, x, xlo, xhi, y, ylo, yhi) } }
Output: name: "tgae" title: "graph with asymmetric errors" #pts: 4 (x,y)[0] = (+1.000000e+00 +/- [+1.000000e-01, +2.000000e-01], +2.000000e+00 +/- [+3.000000e-01, +4.000000e-01]) (x,y)[1] = (+2.000000e+00 +/- [+2.000000e-01, +4.000000e-01], +4.000000e+00 +/- [+6.000000e-01, +8.000000e-01]) (x,y)[2] = (+3.000000e+00 +/- [+3.000000e-01, +6.000000e-01], +6.000000e+00 +/- [+9.000000e-01, +1.200000e+00]) (x,y)[3] = (+4.000000e+00 +/- [+4.000000e-01, +8.000000e-01], +8.000000e+00 +/- [+1.200000e+00, +1.600000e+00])
func NewGraphAsymmErrorsFrom ¶
func NewGraphAsymmErrorsFrom(s2 *hbook.S2D) GraphErrors
NewGraphAsymmErrorsFrom creates a new GraphAsymErrors from 2-dim hbook data points.
func NewGraphErrorsFrom ¶
func NewGraphErrorsFrom(s2 *hbook.S2D) GraphErrors
NewGraphErrorsFrom creates a new GraphErrors from 2-dim hbook data points.
type H1 ¶
type H1 interface { root.Named // Entries returns the number of entries for this histogram. Entries() float64 // SumW returns the total sum of weights SumW() float64 // SumW2 returns the total sum of squares of weights SumW2() float64 // SumWX returns the total sum of weights*x SumWX() float64 // SumWX2 returns the total sum of weights*x*x SumWX2() float64 // SumW2s returns the array of sum of squares of weights SumW2s() []float64 }
H1 is a 1-dim ROOT histogram
type H1D ¶
type H1D struct {
// contains filtered or unexported fields
}
H1D implements ROOT TH1D
func NewH1DFrom ¶
NewH1DFrom creates a new 1-dim histogram from hbook.
func (*H1D) Entries ¶
func (h *H1D) Entries() float64
Entries returns the number of entries for this histogram.
func (*H1D) MarshalYODA ¶
MarshalYODA implements the YODAMarshaler interface.
func (*H1D) SumW2s ¶
func (h *H1D) SumW2s() []float64
SumW2s returns the array of sum of squares of weights
func (*H1D) UnmarshalYODA ¶
UnmarshalYODA implements the YODAUnmarshaler interface.
func (*H1D) XBinCenter ¶
XBinCenter returns the bin center value in X.
func (*H1D) XBinContent ¶
XBinContent returns the bin content value in X.
func (*H1D) XBinLowEdge ¶
XBinLowEdge returns the bin lower edge value in X.
type H1F ¶
type H1F struct {
// contains filtered or unexported fields
}
H1F implements ROOT TH1F
func NewH1FFrom ¶
NewH1FFrom creates a new 1-dim histogram from hbook.
func (*H1F) Entries ¶
func (h *H1F) Entries() float64
Entries returns the number of entries for this histogram.
func (*H1F) MarshalYODA ¶
MarshalYODA implements the YODAMarshaler interface.
func (*H1F) SumW2s ¶
func (h *H1F) SumW2s() []float64
SumW2s returns the array of sum of squares of weights
func (*H1F) UnmarshalYODA ¶
UnmarshalYODA implements the YODAUnmarshaler interface.
func (*H1F) XBinCenter ¶
XBinCenter returns the bin center value in X.
func (*H1F) XBinContent ¶
XBinContent returns the bin content value in X.
func (*H1F) XBinLowEdge ¶
XBinLowEdge returns the bin lower edge value in X.
type H1I ¶
type H1I struct {
// contains filtered or unexported fields
}
H1I implements ROOT TH1I
func NewH1IFrom ¶
NewH1IFrom creates a new 1-dim histogram from hbook.
func (*H1I) Entries ¶
func (h *H1I) Entries() float64
Entries returns the number of entries for this histogram.
func (*H1I) MarshalYODA ¶
MarshalYODA implements the YODAMarshaler interface.
func (*H1I) SumW2s ¶
func (h *H1I) SumW2s() []float64
SumW2s returns the array of sum of squares of weights
func (*H1I) UnmarshalYODA ¶
UnmarshalYODA implements the YODAUnmarshaler interface.
func (*H1I) XBinCenter ¶
XBinCenter returns the bin center value in X.
func (*H1I) XBinContent ¶
XBinContent returns the bin content value in X.
func (*H1I) XBinLowEdge ¶
XBinLowEdge returns the bin lower edge value in X.
type H2 ¶
type H2 interface { root.Named // Entries returns the number of entries for this histogram. Entries() float64 // SumW returns the total sum of weights SumW() float64 // SumW2 returns the total sum of squares of weights SumW2() float64 // SumWX returns the total sum of weights*x SumWX() float64 // SumWX2 returns the total sum of weights*x*x SumWX2() float64 // SumW2s returns the array of sum of squares of weights SumW2s() []float64 // SumWY returns the total sum of weights*y SumWY() float64 // SumWY2 returns the total sum of weights*y*y SumWY2() float64 // SumWXY returns the total sum of weights*x*y SumWXY() float64 }
H2 is a 2-dim ROOT histogram
type H2D ¶
type H2D struct {
// contains filtered or unexported fields
}
H2D implements ROOT TH2D
func NewH2DFrom ¶
NewH2DFrom creates a new H2D from hbook 2-dim histogram.
func (*H2D) MarshalYODA ¶
MarshalYODA implements the YODAMarshaler interface.
func (*H2D) UnmarshalYODA ¶
UnmarshalYODA implements the YODAUnmarshaler interface.
func (*H2D) XBinCenter ¶
XBinCenter returns the bin center value in X.
func (*H2D) XBinContent ¶
XBinContent returns the bin content value in X.
func (*H2D) XBinLowEdge ¶
XBinLowEdge returns the bin lower edge value in X.
func (*H2D) YBinCenter ¶
YBinCenter returns the bin center value in Y.
func (*H2D) YBinContent ¶
YBinContent returns the bin content value in Y.
func (*H2D) YBinLowEdge ¶
YBinLowEdge returns the bin lower edge value in Y.
type H2F ¶
type H2F struct {
// contains filtered or unexported fields
}
H2F implements ROOT TH2F
func NewH2FFrom ¶
NewH2FFrom creates a new H2F from hbook 2-dim histogram.
func (*H2F) MarshalYODA ¶
MarshalYODA implements the YODAMarshaler interface.
func (*H2F) UnmarshalYODA ¶
UnmarshalYODA implements the YODAUnmarshaler interface.
func (*H2F) XBinCenter ¶
XBinCenter returns the bin center value in X.
func (*H2F) XBinContent ¶
XBinContent returns the bin content value in X.
func (*H2F) XBinLowEdge ¶
XBinLowEdge returns the bin lower edge value in X.
func (*H2F) YBinCenter ¶
YBinCenter returns the bin center value in Y.
func (*H2F) YBinContent ¶
YBinContent returns the bin content value in Y.
func (*H2F) YBinLowEdge ¶
YBinLowEdge returns the bin lower edge value in Y.
type H2I ¶
type H2I struct {
// contains filtered or unexported fields
}
H2I implements ROOT TH2I
func NewH2IFrom ¶
NewH2IFrom creates a new H2I from hbook 2-dim histogram.
func (*H2I) MarshalYODA ¶
MarshalYODA implements the YODAMarshaler interface.
func (*H2I) UnmarshalYODA ¶
UnmarshalYODA implements the YODAUnmarshaler interface.
func (*H2I) XBinCenter ¶
XBinCenter returns the bin center value in X.
func (*H2I) XBinContent ¶
XBinContent returns the bin content value in X.
func (*H2I) XBinLowEdge ¶
XBinLowEdge returns the bin lower edge value in X.
func (*H2I) YBinCenter ¶
YBinCenter returns the bin center value in Y.
func (*H2I) YBinContent ¶
YBinContent returns the bin content value in Y.
func (*H2I) YBinLowEdge ¶
YBinLowEdge returns the bin lower edge value in Y.