Custom Bar/Column Chart Plugin (Show Totals, Sort Categories, Sort Breakbys)
Steps to install (Current Version is V2.9.0):
- Download from my GitHub
- Download a ZIP of the project, Unzip the folder customBarColumnChart-master, add it to your plugin folder, and rename the folder customBarColumnChart
Description:
When you add a breakby to a bar or column chart, you lose the ability to see the total value for the bar/column, you lose the ability to sort the category based on the total amount in each bar/column, and you never had the ability to sort the breakby. This plugin allows you to do all 3 in an easy to use way. In addition, you can also sort a column/bar chart in any custom predefined configuration.
Example Usage:
- Put plugin in /plugins folder and make sure the folder is called: customBarColumnChart
- Create/Edit column/bar chart
- Activate "CUSTOMIZE CHART" option on the Design Panel.
- Play around with a few options
- EASY SUCCESS! =D
Here you can see the new menu option in the bottom right of the screen outlined in red:
I easily turned on the CUSTOMIZE CHART option, and decided that this chart would be more useful if I could show totals for each column, sort the categories descending, and sort inside the breakby so that the most recent dates are at the top of the column instead of at the bottom.
You can easily click between the various options to see what works best for your usecase! It works on both Column Charts + Bar Charts, and you can play around with all 3 Types (Classic, Stacked, Stack 100). This also supports slice/highlight filtering, drilling, jumping, and even PDF reporting.
Here is another chart that demonstrates a non-stacked bar chart:
In this second example, you can see how the categories are sorted ascending based on the total bar value, as well as how the breakby is now sorted from largest to smallest based on the totals. You can see breakby (legend) is in the same order as the category sorting on the above chart (Bikes was the largest total, Cables & Housing was the smallest total).
Did I mention it supports Column/Bar charts that have multiple series but no breakby as well!
You can even configure your own custom sorts:
This bar chart now has the categories sorted where the countries starting with M and N are at the top. The breakby can be sorted the same way. All you have to do is drag and drop items based on your liking. As soon as you click off to the side of the popup or click Save, the configuration will save. If you don't like the updates you made, just click cancel. If you ever want to you can reset the configuration as well.
There is also functionality to configure the Show Totals:
Here is the widget script for the left chart:
widget.on('processresult', function(w, args) {
//args.widget.custom.barcolumnchart.totalLabelEnabled = false;
args.widget.custom.barcolumnchart.totalSeriesName = 'Total (YOU CAN NAME THIS SERIES)';
args.widget.custom.barcolumnchart.totalPointColor = 'green';
args.widget.custom.barcolumnchart.totalPointFontSize = '20px';
args.widget.custom.barcolumnchart.totalPointSize = '7';
args.widget.custom.barcolumnchart.totalAsLine = true;
args.widget.custom.barcolumnchart.totalPointFontFamily = 'Times New Roman';
args.widget.custom.barcolumnchart.totalYAxisPercentSpacing = 100;
args.widget.custom.barcolumnchart.totalLabelPadding = 100;
});
Here is the widget script for the right chart:
widget.on('processresult', function(w, args) {
args.widget.custom.barcolumnchart.totalPointColor = '#19b9c9';
args.widget.custom.barcolumnchart.totalPointFontSize = '13px';
args.widget.custom.barcolumnchart.totalPointSize = '0';
args.widget.custom.barcolumnchart.totalAsLine = false;
args.widget.custom.barcolumnchart.totalPointFontFamily = 'Times New Roman';
});
Also supports various chart types:
Overall this plugin should be a huge nice to have for most! I hope you enjoy and I’d love to get your feedback! =D
Special Thanks to Artem Yevtushenko for his sorting breakby script. Very big thank you to Jason Sears for teaching me how to make the plugin more responsive and PDFable. Very big thank you to Shani Adani for showing me how to make the plugin responsive even when you change the chart types, and for helping me clean up the code.
-
Hi Elliott,
The plugin looks great, very useful in many cases that we needed to find ad-hoc solution for our clients
With that in mind, I'm wondering whether to replace the current workaround/hacks that we've done to achieve some of the functionality described in this widget to some of my clients.
Do you consider this one as a stable plugin that will be maintained in the future alongside new versions of Sisense?
Thanks,
Ravid -
Hi Ravid,
Thank you for the feedback! As of right now, the plugin is considered an un-supported Sisense plugin. I did go through a decent amount of testing, and the plugin does seem very stable. For the time being, I'm going to be personally supporting this one, so if you find any issues, please let me know so I can fix them. If this plugin gets a lot of traction, it is possible that it can become an officially supported one.
So overall, I recommend that you use the plugin at your own risk as it is "unsupported".
Best,
Elliott
-
Hi Elliott.
One little issue : when "none" is selected I get this :
While reverse gives this :Side note, I find "none" to be misleading/imprecise... Maybe consider Default or Asc?
Also, in the custom ordering of my break by, when I move a category it disappears. Haven't really been able to get the results I was aiming for in my tests, but you definitely are on the right track with this option.
I will definitely keep an eye on this. Keep up the good work.
-
Hey Carl,
So I tested this out and I can't quite replicate. I'm actually a bit surprised that None gives different results than when the plugin is disabled. Are you testing in IE11 or a different browser?
As a note, I do know that there is a minor bug in the product that can cause None and Reverse to show up incorrectly, but that is because the data is already coming back non-alphabetically sometimes.
Again, very much appreciate the feedback!
Best,
Elliott -
Hi Elliott,
Yes sure, this looks much cleaner, generally standard Sisense popup window would look better and more consistent J also, as you can see, there is a little drag and drop, not sure if you can utilize that, maybe some styling of the fields to follow the same idea? Btw. Don’t look at the colours, we modified them slightly.
Thanks,
Pawel
Please sign in to leave a comment.
Comments
103 comments