Skip to content
GitHub

ChartTime

ChartTime manifests describe time-based charts. They share many fields with ChartStructure but add date-axis-specific options.

apiVersion: bino.bi/v1alpha1
kind: ChartTime
metadata:
  name: revenue_time_chart
spec:
  dataset: revenue_daily
  chartTitle: "Daily revenue"
  chartMode: bar             # bar | line | auto
  maxBars: 28                # threshold for auto mode
  axisLabelsMode: smart      # smart | long | short
  dateInterval: auto         # year | quarter | month | week | day | hour | minute | second | millisecond | auto
  filter: "region_group = 'EMEA'"
  level: category
  order: category
  orderDirection: asc
  measureScale: M
  measureUnit: "EUR"
  type: line                 # bar | line | area
  internationalisation: "_system"
  internationalisationMode: "default"
  componentStatus: "ok"
  translation: "chart.revenue.time"
  hideAxisLabels: false
  showCategories: true
  showMeasureScale: true
  showOverlayAvg: true
  showOverlayMedian: false
  limit: 0
  intervalSpanLimit: 50
  percentageScaling: "default"
  unitScaling: "default"
  syncSpaceLeft: 0
  pixelPerPercentage: 2
  pixelPerUnit: 0.1
  leftSideOffsetForHorizontalSync: 0
  scenarios: ["ac1", "fc1"]
  variances: ["dfc1_ac1_pos"]
  • dataset – required dataset name or array.
  • chartTitle – optional title.
  • chartMode – rendering mode: bar (default), line, or auto. When set to auto, the chart automatically switches to line mode when data points exceed maxBars.
  • maxBars – threshold for auto-switching to line mode (default: 28). Only applies when chartMode is auto.
  • axisLabelsModesmart (context-aware labels), long, or short.
  • dateInterval – desired time granularity; auto lets the renderer choose.
  • filter, level, order, orderDirection, measureScale, measureUnit – similar semantics to ChartStructure.
  • type – chart type: bar, line, or area.
  • hideAxisLabels, showCategories, showMeasureScale – visibility flags.
  • showOverlayAvg, showOverlayMedian – enables overlay lines.
  • limit – column stack limit; 0 means unlimited.
  • intervalSpanLimit – controls how many columns drive automatic date interval selection.
  • percentageScaling, unitScaling, pixelPerPercentage, pixelPerUnit, syncSpaceLeft, leftSideOffsetForHorizontalSync – scaling and sync options.
  • scenarios and variances – configured as for ChartStructure.
---
apiVersion: bino.bi/v1alpha1
kind: ChartTime
metadata:
  name: revenue_monthly_chart
spec:
  dataset: revenue_monthly
  chartTitle: "Monthly revenue"
  axisLabelsMode: smart
  dateInterval: month
  level: category
  order: category
  orderDirection: asc
  measureScale: M
  measureUnit: "EUR"
  type: line
  showMeasureScale: true
  showOverlayAvg: true
  scenarios: ["ac1"]

Force line chart rendering with square markers at each data point:

---
apiVersion: bino.bi/v1alpha1
kind: ChartTime
metadata:
  name: revenue_line_chart
spec:
  dataset: revenue_daily
  chartTitle: "Daily revenue trend"
  chartMode: line
  dateInterval: day
  measureScale: M
  measureUnit: "EUR"
  scenarios: ["ac1", "pp1"]

Automatically switch to line chart when data points exceed the threshold:

---
apiVersion: bino.bi/v1alpha1
kind: ChartTime
metadata:
  name: revenue_auto_chart
spec:
  dataset: revenue_weekly
  chartTitle: "Weekly revenue"
  chartMode: auto
  maxBars: 15
  dateInterval: week
  measureScale: M
  measureUnit: "EUR"
  scenarios: ["ac1", "fc1"]

When rendered in line mode:

  • Square markers (8×8px) at each data point
  • Data values displayed above each marker
  • Scenario labels positioned to the right of the last data point
  • Smart X-axis labels showing start, end, and year boundaries
  • Vertical dashed separator lines at year transitions
  • IBCS color schema:
    • AC (Actual): Black fill, black stroke, solid line
    • PP (Previous Period): Gray fill, gray stroke, solid line
    • FC (Forecast): White fill, black stroke, dashed line
    • PL (Plan): White fill, black stroke, solid line