Class GaugeBandsRenderer
java.lang.Object
com.arbergashi.charts.render.BaseRenderer
com.arbergashi.charts.render.circular.GaugeBandsRenderer
- All Implemented Interfaces:
ChartRenderer
GaugeBandsRenderer renders a gauge with colored bands (green/yellow/red), suitable for business KPIs.
Contract:
- Uses first data point as value.
- Range uses PlotContext y-range (preferred) and falls back to ChartPoint min/max or 0..100.
- Bands are configured via ChartAssets key
chart.gaugeBands.bands.
Band format (UTF-8 properties safe):
start,end,color; start,end,color; ... example: 0,60,#22c55e;60,85,#f59e0b;85,100,#ef4444
- Since:
- 2025-06-01
- Version:
- 1.0.0
- Author:
- Arber Gashi
-
Field Summary
Fields inherited from class BaseRenderer
PIXEL_BUF, PIXEL_BUF4 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddrawData(Graphics2D g2, ChartModel model, PlotContext context) Implementation-specific drawing logic.getPointAt(Point2D pixel, ChartModel model, PlotContext context) Returns the data index nearest to the given pixel coordinate, if supported.booleanIndicates whether this renderer should appear in the legend.Methods inherited from class BaseRenderer
drawHighlightPoint, drawI18nLabel, drawLabel, getArc, getCachedFont, getCachedGradient, getCachedStroke, getCachedStroke, getCachedStroke, getCubicCurve, getEllipse, getId, getLayerIndex, getLegendColor, getLine, getName, getPathCache, getRect, getRoundRectangle, getSeriesColor, getSeriesStroke, getTheme, getTooltipText, isMultiColor, pBuffer, pBuffer4, render, resolveTheme, seriesOrBase, setLayerIndex, setMultiColor, setTheme, setupQualityHints, themeAccent, themeAxisLabel, themeBackground, themeBearish, themeBullish, themeForeground, themeGrid, themeSeriesMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ChartRenderer
clearHover, createContext, getFocusValues, getPreferredYRange, renderEmptyState, supportsEmptyState
-
Constructor Details
-
GaugeBandsRenderer
public GaugeBandsRenderer()
-
-
Method Details
-
isLegendRequired
public boolean isLegendRequired()Description copied from class:BaseRendererIndicates whether this renderer should appear in the legend.- Specified by:
isLegendRequiredin interfaceChartRenderer- Overrides:
isLegendRequiredin classBaseRenderer- Returns:
- true if the renderer should appear in the legend
-
drawData
Description copied from class:BaseRendererImplementation-specific drawing logic. Must follow Zero-Allocation rules.- Specified by:
drawDatain classBaseRenderer
-
getPointAt
Description copied from class:BaseRendererReturns the data index nearest to the given pixel coordinate, if supported.- Specified by:
getPointAtin interfaceChartRenderer- Overrides:
getPointAtin classBaseRenderer- Parameters:
pixel- mouse/crosshair position in component coordinatesmodel- data model for this layercontext- current plot context- Returns:
- optional point index
-