Niagara Energy Benchmark Chart


The Niagara energy benchmark chart retrieves energy meter histories and presents them on a comparison chart. The chart should be bound to a numeric point or numeric writable. It updates in real-time and uses bql queries to collate the data. Set the daily benchmark values in the charts configuration. The chart has a number of configurable properties that can be used to modify look, feel, and functionality. Also check out the Energy View Template.


1. Copy the energyBenchmarkChart-ux file to your modules directory.
2. Open the module from your palette file.
3. Drag and drop the widget from the palette onto your px view.

Niagara Energy Benchmark Chart

Widget Properties


The widget has a number of configurable properties that can be used to modify look, feel, and functionality.

Changing Widget Properties - most properties are self-explanatory but some require some explaining.

Main Chart Binding
Set this to an absolute ord, e.g.
station:|slot:/Drivers/NiagaraNetwork/AHU5 or relativized ORD e.g.
The ord should point to a numeric point/writable that has a numeric interval extension.

Daily Benchmarks:
These are the values that your site is aiming for. It is a comma delimited string with 7 values, and starts from Sunday.

Default Period:
When the chart loads up, it will display a specified period. Options are (case-sensitive):

Chart Type:

Refresh Interval:
How often the chart data should refresh. In milliseconds.

Using in your HTML Page

You can use the widget in your custom html page as long as the html file is in a appropriate station directory.
E.g. C:/../station/shared/demo1.html

1. Create an html page and place in your station files directory.
2. Create a div element and give it an id so you can inject the widget into this area. E.g.: widget1.
3. Add the following scripts before the closing head tag or the closing body tag. E.g.:

<script type="text/javascript">

    var require = {
        paths: {
            "nmodule": "/module",
            "baja": "/module/bajaScript/rc/plugin/baja",
            "bajaScript": "/module/bajaScript/rc",
            "bajaux": "/module/bajaux/rc",
            "lex": "/module/js/rc/lex/lexplugin",
            "css": "/module/js/com/tridium/js/ext/require/css",

            "jquery": "/module/js/rc/jquery/jquery-2.1.1",
            "Promise": "/module/js/rc/bluebird/bluebird",

            // these are runtime dependencies
            "hbs": "/module/js/rc/require-handlebars-plugin/hbs",
            "i18nprecompile": "/module/js/rc/require-handlebars-plugin/hbs/i18nprecompile",
            "json2": "/module/js/rc/require-handlebars-plugin/hbs/json2",
            "underscore": "/module/js/rc/underscore/underscore",

        hbs: {
            disableI18n: true
<script type="text/javascript" src="/module/js/com/tridium/js/ext/require/require.min.js"></script>
                        require(['/module/energyBenchmarkChart/rc/'], function (app) {

                                actualBarColor: 'rgb(0, 158, 251)',
                                backgroundColor: '#263238',
                                benchmarkBarColor: 'rgb(85, 206, 99)',
                                borderColor: '#3e4e56',
                                chartType: 'bar', // bar, horizontalBar, pie, doughnut
                                defaultPeriod: 'weekToDate',
                                dailyBenchmarks: '20,160,140,120,100,80,40', // Starts from sunday
                                dataLoadDelay: 1000, // in milliseconds
                                divId: '#widget1',
                                fontFamily: 'Poppins, sans-serif', // Web fonts, e.g. arial, sans-serif
                                labels: 'Actual,Benchmark',
                                labelFontSize: 12,
                                labelFontColor: '#56595b',
                                ord: 'station:|slot:/Drivers/NiagaraNetwork/Boardroom',  // only absolute ord allowed
                                precision: 2,
                                refreshInterval: 60000, // in milliseconds
                                selectBorderColor: '#d9d9d9',
                                showChartBackgroudStyle: 'true',
                                showDemoData: 'false',
                                titleFontColor: '#ffffff',
                                titleFontSize: '18px',
                                titleFontWeight: '400',
                                title: 'Chart 1',
                                weekdays: 'Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday',
                                yAxisLabel: 'Kwh'
                    <div id="widget1" style="width:500px;height:400px;"></div>


Widgets and drivers must be licensed with us. Licenses are bound to the stations host Id. You will be provided access to the Software and Licensing Portal where you can manage your own licenses. Here you can add, update, or delete licenses as needed.

There are few ways to get a license file:

1. Add our licensing module to your station services. This module automatically retrieves the license from our servers and saves it to your stations shared folder directory.

2. Alternatively, Login to the Software and Licensing Portal (link provided in Order Confirmation) and add your host id's as needed. Copy the license file to the stations shared directory.

Finally, make sure the station user has access to WLicenseService in the user management and category service section.

Niagara Licensing

Niagara Dashboard

Niagara IOT technologies and modern toolsets allow you to build a powerful Niagara dashboard which is real time, data-driven, and cost effective. Our widgets are purpose-built by providing information with faster communication through real-time, data-driven, dashboards for web, desktop and mobile devices. You can now create a cutting-edge display of conventional HVAC system graphics, Dashboards, Alarms & Scheduling, Historical Data, and Analytics.

You May Also Like

Multiline Chart

Totals Chart

Comparison Charts

back to more widgets...