Gráficos y visualización · jdashboardUI 23.5 · B4J / JavaFX
Gráfico de barras verticales con animación, colores por barra, gradiente, valores, grid y una serie de línea opcional para crear gráficos combinados.
La imagen mostrada en esta página es una referencia visual creada para la documentación. No pretende ser una captura pixel-perfect del control; el resultado real depende del tamaño, tema, colores y datos.
Características destacadas
- Exportación PNG
- Animación configurable
- Grid / ejes configurables
- Gradientes
- Título configurable
- Interacción por clic
Cuándo usarlo
Gráfico de barras verticales con animación, colores por barra, gradiente, valores, grid y una serie de línea opcional para crear gráficos combinados.
Designer Properties
| Property | Type | Default | Description |
|---|---|---|---|
| BarColor | Color | #FF8A2BE2 |
Color of the bars (purple as in the image) |
| ShowMarker | Boolean | True |
Shows the values above each bar |
| MarkerText | String | API Calls |
|
| Animate | Boolean | True |
|
| Duration | Int | 1000 |
Duration in milliseconds |
| ValueSuffix | String | `` | Suffix for bar values (e.g., %, $, etc.) |
| UseGradient | Boolean | False |
Use a gradient fill for the bars |
| ShowGrid | Boolean | False |
Shows or hides the horizontal grid lines |
| GridColor | Color | 0xFF64748B |
Color of the horizontal grid lines |
| GridInterval | Float | 0 |
Interval between grid lines (0 for auto 4 steps) |
| GridTextColor | Color | 0xFF64748B |
Color of the grid Y-axis labels |
| GridTextBold | Boolean | False |
Set to True to make the Y-axis text bold |
| SmoothCurves | Boolean | False |
Draw the optional line series as smooth curves instead of straight segments |
Creación y ciclo de vida
Private JBarChart1 As JBarChart
JBarChart1.Initialize(Me, "JBarChart1")
JBarChart1.AddToParent(Root, 20dip, 20dip, 640dip, 360dip)
Ejemplo funcional
Dim Labels As List
Labels.Initialize2(Array As String("Jan", "Feb", "Mar", "Apr"))
Dim Values As List
Values.Initialize2(Array As Double(42, 65, 51, 88))
JBarChart1.TextTitle = "API Calls"
JBarChart1.setData(Labels, Values)
JBarChart1.ShowGrid = True
JBarChart1.RoundedBars = True
JBarChart1.Suffix = "%"
Propiedades B4X normalizadas
Los accesores públicos getX/setX compatibles se presentan como propiedades B4X normales. Los métodos parametrizados siguen documentándose como métodos.
| Propiedad | Acceso | Tipo |
|---|---|---|
| BarWidth | read / write | Float |
| BarSpacing | read / write | Float |
| ShowAxes | read / write | Boolean |
| ShowYAxisValues | read / write | Boolean |
| ShowGrid | read / write | Boolean |
| GridColor | read / write | Int |
| GridInterval | read / write | Float |
| GridTextColor | read / write | Int |
| GridTextBold | read / write | Boolean |
| BarSeriesName | write | String |
| ShowLineValues | write | Boolean |
| Curves | write | Boolean |
| TitleFont | write | B4XFont |
| TitleColor | write | Int |
| XAxisTextColor | write | Int |
| TextTitle | write | String |
| Color | write | Int |
| Colors | write | List |
| ShowValues | write | Boolean |
| Suffix | write | String |
| Gradient | write | Boolean |
| RoundedBars | write | Boolean |
Eventos
MouseClicked
Exportación y renderizado
Cuando el módulo expone SaveAsPNG / SavePNG, puedes guardar el estado renderizado del control directamente a PNG. Comprueba el Boolean devuelto cuando exista.
Notas y comportamiento real de la versión analizada
- Admite una serie de línea opcional mediante setLineSeries, con control independiente de valores y curvas suaves.
Historial, tiempo real y gráfico combinado
Para un historial solo de barras:
JBarChart1.AddPoint( _
DateTime.Time(DateTime.Now), _
Rnd(20, 100), _
24)
Si el gráfico utiliza la línea opcional creada con setLineSeries, usa AddCombinedPoint para agregar etiqueta, barra y línea en una sola operación:
JBarChart1.AddCombinedPoint( _
DateTime.Time(DateTime.Now), _
Rnd(20, 100), _
Rnd(20, 100), _
24)
MaxPoints debe ser al menos 1. Al superar el límite se elimina el punto más antiguo y las estructuras permanecen sincronizadas. Si existe una serie de línea activa, AddPoint devuelve False para evitar desalinear barras y línea; usa AddCombinedPoint. La actualización es inmediata, mantiene el scroll horizontal y respeta Curves para la línea.
API pública completa
-
AddCombinedPoint(Label As String, BarValue As Double, LineValue As Double, MaxPoints As Int) As Boolean -
AddPoint(Label As String, Value As Double, MaxPoints As Int) As Boolean -
Initialize(Callback As Object, EventName As String) -
DesignerCreateView(Base As Object, Lbl As Label, Props As Map) -
AddToParent(Parent As B4XView, Left As Int, Top As Int, Width As Int, Height As Int) -
setData(PointsX As List, Values As List) -
setLineSeries(Values As List, SeriesName As String, Color As Int) -
setBarSeriesName(SeriesName As String) -
setShowLineValues(Show As Boolean) -
setCurves(Curves As Boolean) -
clearLineSeries() -
setTitleFont(Font As B4XFont) -
setTitleColor(Color As Int) -
setXAxisTextColor(Color As Int) -
setTextTitle(Title As String) -
setColor(color As Int) -
setColors(Colors As List) -
setShowValues(Show As Boolean) -
setSuffix(Suffix As String) -
setGradient(Use As Boolean) -
setBarWidth(Width As Float) -
getBarWidth() As Float -
setBarSpacing(Spacing As Float) -
getBarSpacing() As Float -
setRoundedBars(Enabled As Boolean) -
SaveAsPNG(Dir As String, FileName As String, BackgroundColor As Int) As Boolean -
setShowAxes(Show As Boolean) -
getShowAxes() As Boolean -
setShowYAxisValues(Show As Boolean) -
getShowYAxisValues() As Boolean -
setShowGrid(Show As Boolean) -
getShowGrid() As Boolean -
setGridColor(Color As Int) -
getGridColor() As Int -
setGridInterval(Interval As Float) -
getGridInterval() As Float -
setGridTextColor(Color As Int) -
getGridTextColor() As Int -
setGridTextBold(Bold As Boolean) -
getGridTextBold() As Boolean
Componentes relacionados
- JMultiBarChart
- JStackedBarChart
- JLineChart