Documentation
¶
Overview ¶
statictimeseriesdata provides tools for adding and formatting static time series data for reporting purposes.
statictimeseriesdata provides tools for adding and formatting static time series data for reporting purposes.
statictimeseriesdata provides tools for adding and formatting static time series data for reporting purposes.
statictimeseriesdata provides tools for adding and formatting static time series data for reporting purposes.
statictimeseriesdata provides tools for adding and formatting static time series data for reporting purposes.
statictimeseriesdata provides tools for adding and formatting static time series data for reporting purposes.
statictimeseriesdata provides tools for adding and formatting static time series data for reporting purposes.
statictimeseriesdata provides tools for adding and formatting static time series data for reporting purposes.
Index ¶
- func AggregatePriorMonths(ds DataSeries, start time.Time, months uint) int64
- func DS3ToTable(ds3 DataSeriesSetSimple, fmtTime func(time.Time) string) (table.TableData, error)
- func DataSeriesItemTimes(series *DataSeries) []time.Time
- func DataSeriesMapMinMaxTimes(dsm map[string]DataSeries) (time.Time, time.Time, error)
- func DataSeriesMapMinMaxValues(dsm map[string]DataSeries) (int64, int64, error)
- func DataSeriesMinMaxTimes(series *DataSeries) (time.Time, time.Time)
- func DataSeriesSliceNames(dsSlice []DataSeries) []string
- func DataSeriesSliceTable(dsSlice []DataSeries) table.TableData
- func DataSeriesSliceTimes(dsSlice []DataSeries) []string
- func DataSeriesSliceWriteXLSX(filename string, dsSlice []DataSeries) error
- func DataSeriesTimeSeries(series *DataSeries, interval timeutil.Interval) []time.Time
- func DataSeriesToTable(ds DataSeries, interval timeutil.Interval, col2 string) table.TableData
- func DataSeriesWriteXLSX(filename string, ds DataSeries, interval timeutil.Interval, col2 string) error
- func MSS2MS(in map[string]map[string]int) map[string]int
- func ReportAxisX(dss DataSeriesSetSimple, cols int, conv func(time.Time) string) []string
- func WriteXLSX(filename string, ds3 DataSeriesSetSimple, fmtTime func(time.Time) string) error
- type DataItem
- type DataSeries
- func (series *DataSeries) AddItem(item DataItem)
- func (series *DataSeries) ItemsSorted() []DataItem
- func (series *DataSeries) Keys() []string
- func (series *DataSeries) Last() (DataItem, error)
- func (series *DataSeries) MaxValue() int64
- func (series *DataSeries) MinMaxTimes() (time.Time, time.Time)
- func (series *DataSeries) MinMaxValues() (int64, int64)
- func (series *DataSeries) MinMaxValuesFloat64() (float64, float64)
- func (series *DataSeries) MinValue() int64
- func (series *DataSeries) Pop() (DataItem, error)
- func (series *DataSeries) SetSeriesName(seriesName string)
- func (series *DataSeries) SortedItems() []DataItem
- type DataSeriesSet
- func (set *DataSeriesSet) AddItem(item DataItem)
- func (set *DataSeriesSet) BuildOutputSeries(source DataSeries) (DataSeries, error)
- func (set *DataSeriesSet) FlattenData() map[string][]time.Time
- func (set *DataSeriesSet) GetDataSeries(seriesName string, seriesType SeriesType) (DataSeries, error)
- func (set *DataSeriesSet) Inflate() error
- func (set *DataSeriesSet) SeriesNamesSorted() []string
- type DataSeriesSetSimple
- func (set *DataSeriesSetSimple) AddDataSeries(ds DataSeries)
- func (set *DataSeriesSetSimple) AddItem(item DataItem)
- func (set *DataSeriesSetSimple) AddItems(items ...DataItem)
- func (set *DataSeriesSetSimple) GetItem(seriesName, rfc3339 string) (DataItem, error)
- func (set *DataSeriesSetSimple) Inflate()
- func (set *DataSeriesSetSimple) SeriesNames() []string
- func (set *DataSeriesSetSimple) TimeStrings() []string
- type DataSeriesSetSimpleSet
- type RowFloat64
- type RowInt64
- type SeriesIntervals
- type SeriesType
- type TimeSeriesFunnel
- type TimeSeriesSimple
- type TimeStats
- type XoXGrowth
- type XoxPoint
- type YoYQoQGrowth
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AggregatePriorMonths ¶ added in v1.0.0
func AggregatePriorMonths(ds DataSeries, start time.Time, months uint) int64
func DS3ToTable ¶
DS3ToTable returns a `DataSeriesSetSimple` as a `table.TableData`.
func DataSeriesItemTimes ¶
func DataSeriesItemTimes(series *DataSeries) []time.Time
func DataSeriesMapMinMaxValues ¶
func DataSeriesMapMinMaxValues(dsm map[string]DataSeries) (int64, int64, error)
func DataSeriesMinMaxTimes ¶
func DataSeriesMinMaxTimes(series *DataSeries) (time.Time, time.Time)
func DataSeriesSliceNames ¶
func DataSeriesSliceNames(dsSlice []DataSeries) []string
func DataSeriesSliceTable ¶
func DataSeriesSliceTable(dsSlice []DataSeries) table.TableData
func DataSeriesSliceTimes ¶
func DataSeriesSliceTimes(dsSlice []DataSeries) []string
func DataSeriesSliceWriteXLSX ¶
func DataSeriesSliceWriteXLSX(filename string, dsSlice []DataSeries) error
DataSeriesSliceWriteXLSX writes a slice of DataSeries to an Excel XLSX file for easy consumption.
func DataSeriesTimeSeries ¶
func DataSeriesTimeSeries(series *DataSeries, interval timeutil.Interval) []time.Time
func DataSeriesToTable ¶
DataSeriesToTable generates a `table.TableData` given a `DataSeries`.
func DataSeriesWriteXLSX ¶
func DataSeriesWriteXLSX(filename string, ds DataSeries, interval timeutil.Interval, col2 string) error
DataSeriesWriteXLSX writes an XSLX file given a `DataSeries`
func ReportAxisX ¶
ReportAxisX generates data for use with `C3Chart.C3Axis.C3AxisX.Categories`.
Types ¶
type DataSeries ¶
type DataSeries struct {
SeriesName string
ItemMap map[string]DataItem
IsFloat bool
Interval timeutil.Interval // Informational
}
func AggregateSeries ¶
func AggregateSeries(s1 DataSeries) DataSeries
func DataSeriesDivide ¶
func DataSeriesDivide(numer, denom DataSeries) (DataSeries, error)
func NewDataSeries ¶
func NewDataSeries() DataSeries
func (*DataSeries) AddItem ¶
func (series *DataSeries) AddItem(item DataItem)
AddItem adds data item. It will sum values when existing time unit is encountered.
func (*DataSeries) ItemsSorted ¶
func (series *DataSeries) ItemsSorted() []DataItem
func (*DataSeries) Keys ¶
func (series *DataSeries) Keys() []string
func (*DataSeries) Last ¶
func (series *DataSeries) Last() (DataItem, error)
func (*DataSeries) MaxValue ¶
func (series *DataSeries) MaxValue() int64
func (*DataSeries) MinMaxTimes ¶
func (series *DataSeries) MinMaxTimes() (time.Time, time.Time)
func (*DataSeries) MinMaxValues ¶
func (series *DataSeries) MinMaxValues() (int64, int64)
func (*DataSeries) MinMaxValuesFloat64 ¶
func (series *DataSeries) MinMaxValuesFloat64() (float64, float64)
func (*DataSeries) MinValue ¶
func (series *DataSeries) MinValue() int64
func (*DataSeries) Pop ¶
func (series *DataSeries) Pop() (DataItem, error)
func (*DataSeries) SetSeriesName ¶
func (series *DataSeries) SetSeriesName(seriesName string)
func (*DataSeries) SortedItems ¶ added in v1.0.0
func (series *DataSeries) SortedItems() []DataItem
SortedItems returns sorted DataItems. This currently uses a simple string sort on RFC3339 times. For dates that are not handled properly this way, this can be enhanced to use more proper comparison
type DataSeriesSet ¶
type DataSeriesSet struct {
SourceSeriesMap map[string]DataSeries
OutputSeriesMap map[string]DataSeries
OutputAggregateSeriesMap map[string]DataSeries
SeriesIntervals SeriesIntervals
AllSeriesName string
}
DataSeriesSet is used to prepare histogram data for static timeseries charts, adding zero values for time slots as necessary. Usage is to create to call: NewDataSeriesSet("quarter"), AddItem() and then Inflate()
func EsAggsToDataSeriesSet ¶ added in v1.0.0
func EsAggsToDataSeriesSet(aggs []v5.AggregationResRad, interval timeutil.Interval, weekStart time.Weekday) DataSeriesSet
func NewDataSeriesSet ¶
func NewDataSeriesSet(interval timeutil.Interval, weekStart time.Weekday) DataSeriesSet
func (*DataSeriesSet) AddItem ¶
func (set *DataSeriesSet) AddItem(item DataItem)
func (*DataSeriesSet) BuildOutputSeries ¶ added in v1.0.0
func (set *DataSeriesSet) BuildOutputSeries(source DataSeries) (DataSeries, error)
func (*DataSeriesSet) FlattenData ¶ added in v1.0.0
func (set *DataSeriesSet) FlattenData() map[string][]time.Time
func (*DataSeriesSet) GetDataSeries ¶ added in v1.0.0
func (set *DataSeriesSet) GetDataSeries(seriesName string, seriesType SeriesType) (DataSeries, error)
func (*DataSeriesSet) Inflate ¶
func (set *DataSeriesSet) Inflate() error
func (*DataSeriesSet) SeriesNamesSorted ¶ added in v1.0.0
func (set *DataSeriesSet) SeriesNamesSorted() []string
type DataSeriesSetSimple ¶ added in v1.0.0
type DataSeriesSetSimple struct {
Name string
Series map[string]DataSeries
Times []time.Time
Order []string
}
func NewDataSeriesSetSimple ¶ added in v1.0.0
func NewDataSeriesSetSimple() DataSeriesSetSimple
func (*DataSeriesSetSimple) AddDataSeries ¶ added in v1.0.0
func (set *DataSeriesSetSimple) AddDataSeries(ds DataSeries)
func (*DataSeriesSetSimple) AddItem ¶ added in v1.0.0
func (set *DataSeriesSetSimple) AddItem(item DataItem)
func (*DataSeriesSetSimple) AddItems ¶ added in v1.0.0
func (set *DataSeriesSetSimple) AddItems(items ...DataItem)
func (*DataSeriesSetSimple) GetItem ¶ added in v1.0.0
func (set *DataSeriesSetSimple) GetItem(seriesName, rfc3339 string) (DataItem, error)
func (*DataSeriesSetSimple) Inflate ¶ added in v1.0.0
func (set *DataSeriesSetSimple) Inflate()
func (*DataSeriesSetSimple) SeriesNames ¶ added in v1.0.0
func (set *DataSeriesSetSimple) SeriesNames() []string
func (*DataSeriesSetSimple) TimeStrings ¶ added in v1.0.0
func (set *DataSeriesSetSimple) TimeStrings() []string
type DataSeriesSetSimpleSet ¶
type DataSeriesSetSimpleSet struct {
Name string
SetsMap map[string]DataSeriesSetSimple
}
func NewDataSeriesSetSimpleSet ¶
func NewDataSeriesSetSimpleSet(name string) DataSeriesSetSimpleSet
func (*DataSeriesSetSimpleSet) AddItem ¶
func (ds3set *DataSeriesSetSimpleSet) AddItem(setName string, item DataItem)
func (*DataSeriesSetSimpleSet) SetNamesSorted ¶
func (ds3set *DataSeriesSetSimpleSet) SetNamesSorted() []string
type RowFloat64 ¶
func ReportFunnelPct ¶
func ReportFunnelPct(rows []RowInt64) []RowFloat64
func ReportGrowthPct ¶
func ReportGrowthPct(rows []RowInt64) []RowFloat64
type RowInt64 ¶
type RowInt64 struct {
Name string
DisplayName string
HavePlusOne bool
ValuePlusOne int64
Values []int64
}
type SeriesIntervals ¶ added in v1.0.0
type SeriesIntervals struct {
Interval timeutil.Interval
WeekStart time.Weekday
Max time.Time
Min time.Time
CanonicalSeries []time.Time
}
func (*SeriesIntervals) Inflate ¶ added in v1.0.0
func (ival *SeriesIntervals) Inflate() error
func (*SeriesIntervals) ProcItemsMap ¶ added in v1.0.0
func (ival *SeriesIntervals) ProcItemsMap(itemMap map[string]DataItem)
type SeriesType ¶ added in v1.0.0
type SeriesType int
const ( Source SeriesType = iota Output OutputAggregate )
type TimeSeriesFunnel ¶
type TimeSeriesFunnel struct {
Series map[string]TimeSeriesSimple
Order []string
}
func (*TimeSeriesFunnel) DataSeriesSetByQuarter ¶
func (tsf *TimeSeriesFunnel) DataSeriesSetByQuarter() (DataSeriesSetSimple, error)
func (*TimeSeriesFunnel) Times ¶
func (tsf *TimeSeriesFunnel) Times() []time.Time
func (*TimeSeriesFunnel) TimesSorted ¶
func (tsf *TimeSeriesFunnel) TimesSorted() []time.Time
type TimeSeriesSimple ¶
func NewTimeSeriesSimple ¶
func NewTimeSeriesSimple(name, displayName string) TimeSeriesSimple
func (*TimeSeriesSimple) ToDataSeriesQuarter ¶
func (tss *TimeSeriesSimple) ToDataSeriesQuarter() DataSeries
type TimeStats ¶
type TimeStats struct {
Items []DataItem
}
DataItemsStats is used to generate unique counts stats for an array of with time ane names.
func (*TimeStats) UniqueCountsByMonth ¶
func (*TimeStats) UniqueCountsByQuarter ¶
type XoXGrowth ¶ added in v1.0.0
func NewXoXDataSeries ¶ added in v1.0.0
func NewXoXDataSeries(ds DataSeries) (XoXGrowth, error)
type XoxPoint ¶ added in v1.0.0
type XoxPoint struct {
Time time.Time
TimeMonthAgo time.Time
TimeQuarterAgo time.Time
TimeYearAgo time.Time
Value int64
YOldValue int64
QOldValue int64
MOldValue int64
YNowValue int64
QNowValue int64
MNowValue int64
MYAgoValue int64
MQAgoValue int64
MMAgoValue int64
AggregateValue int64
YoY float64
QoQ float64
MoM float64
YoYAggregate float64
QoQAggregate float64
MoMAggregate float64
}
type YoYQoQGrowth ¶ added in v1.0.0
func AddYtdAndQtd ¶ added in v1.0.0
func AddYtdAndQtd(yoy YoYQoQGrowth) YoYQoQGrowth
func NewYoYQoQGrowth ¶ added in v1.0.0
func NewYoYQoQGrowth(set DataSeriesSet) (YoYQoQGrowth, error)
func (*YoYQoQGrowth) ItemsSorted ¶ added in v1.0.0
func (yoy *YoYQoQGrowth) ItemsSorted() []XoxPoint