Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
Table of Contents |
---|
Chart menu allows you to select a form binder or define your own SQL query to display the chart data for the most common graph types. You can also include charts in your userview Dashboard Menu.
Figure 1: Edit Chart Properties
Name | Description |
---|---|
ID | Menu element unique id. Userview will use this id in the URL for the menu if the Custom ID is empty. |
Custom ID | Item link slug. Optional field. Value defined here must be unique to the rest of the Userview Menus as the first matching name will be called upon. |
Label | Menu label. Mandatory field. |
Chart Type |
|
Chart Title | Chart Title to be displayed as part of the generated graph. |
Chart Library |
|
Figure 2: SQL Chart Properties - Datasource
Name | Description | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Datasource |
| ||||||||||||||
Data Binder | When Datasource is set to "Using Data Binder", this option will show up. Advance Form Data Binder has more flexible ways to build chart datasets using join, group, and aggregate function. Please see Datalist Binder for the available binder to use. | ||||||||||||||
SQL Query | When Datasource is set to use any of the "Datasource", this option will show up. You use an SQL Query to produce the dataset required for the graph type. The first column in the dataset will be assumed for the X-axis/label. Example 1:The first column to be returned from the query must be a label (X-axis), followed by value columns for the Y-axis.
Example 2:
|
Figure 3: Data Binder & Chart Data Mapping Properties
Name | Description |
---|---|
Order By | Column to be sorted in the graph dataset. This would affect how the graph is plotted. |
Order |
|
X-axis Value | X-axis label. |
Y-axis Values | Y-axis dataset. |
Figure 4: Chart Options
Name | Description | |||||
---|---|---|---|---|---|---|
X-axis Label | X-axis Label | |||||
X-axis display as |
| |||||
Y-axis Label | Y-axis Label | |||||
Y-axis Prefix | Y-axis Prefix | |||||
Show Legend? | If checked, the legend will be shown in the generated graph. | |||||
Show Value Label in Chart? | If checked, the value label will be shown in the generated graph. | |||||
Stack Series? | If checked, this will affect the generated graph. | |||||
Display as Horizontal Chart? | Display as Horizontal Chart. | |||||
Width | Width in character, for example 100%. | |||||
Height | Height in character, example 300px. | |||||
Colors | Series color. Optional field. Comma-separated values (CSV) of color codes. Example 1: #3333FF,#66FF00,#FF9933,#990000
|
Figure 5: Advanced Properties
Name | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Userview Key Name | When defined, the additional conditions will be appended using the value defined here as the parameter and the userview key value as the value.
When userview key value is defined, you may define #userviewKey# in your SQL query to have it replaced with the userview key value.
| ||||||||||
Custom Header | Custom Header in HTML. | ||||||||||
Custom Footer | Custom Footer in HTML. |
Figure 6: Chart Properties - Performance & Offline Settings
Name | Description |
---|---|
Scope | Caching options are:
|
Duration (s) | Duration in seconds to cache content defaults to 20 seconds if applicable. |
Read more at Performance Improvement with UI Caching.
Note: PWA Offline support is dependent on the theme used.
Name | Description |
---|---|
Enable cache for offline support | Check this to enable caching for offline support, usually set for use on mobile browsers. |
Read Progressive Web Application (PWA) for more information.
The following code can be modified and put in "Custom Header" for displaying the labels outside of the pie chart.
Code Block | ||
---|---|---|
| ||
<script> $(function(){ $.jqplot.preParseOptionsHooks.push(function(args){ args.seriesDefaults.rendererOptions.dataLabelPositionFactor = 1.05; }); }); </script> |
Note |
---|
The charts are plotted using jqPlot. Head over to their website here to see the full list of available hooks for customization. |
The following code can be modified and put in "Custom Header" property, to hide gridlines from the chart plot.
Code Block | ||
---|---|---|
| ||
<script> $(function(){ $.jqplot.preParseOptionsHooks.push(function(args){ args.axesDefaults.drawMajorGridlines = false; }); }); </script> |
The following code can be modified and put in "Custom Footer" for interactive Charts.
Code Block | ||
---|---|---|
| ||
<script> $(document).ready(function(){ $('#jq_plot_chart').bind('jqplotDataClick', function (event, seriesIndex, pointIndex, data) { console.log(event); console.log(seriesIndex); console.log(pointIndex); console.log(data); //for chart which used legend and x-axis, var xaxis = $(".jqplot-xaxis-tick:eq("+pointIndex+")"); var series = $(".jqplot-table-legend-label:eq("+seriesIndex+")"); console.log("x-axis :" + xaxis.text()); console.log("series :" + series.text()); } ); //for double click event. Please note the arguments are different. $('#jq_plot_chart').bind('jqplotDblClick', function (event, coordinate, points, data) { console.log(event); console.log(coordinate); console.log(points); console.log(data); if (data) { var xaxis = $(".jqplot-xaxis-tick:eq("+data.pointIndex+")"); var series = $(".jqplot-table-legend-label:eq("+data.seriesIndex+")"); console.log("values :" + data.data); console.log("x-axis :" + xaxis.text()); console.log("series :" + series.text()); } } ); }); </script> |
Note |
---|
This code does not work with OHLC and candlestick charts. |
Available in Joget Marketplace