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! This is a great plugin, thank you! We are finding it very useful!
I had a quick question though, is there a script to customize the font for the totals? We have a use case where we need to make the font larger for visibility sake when we download the widget to use in a powerpoint slide.
EDIT: I figured out how to do this by modifying the plugin itself, but it would be great to have the option to apply custom formatting to the font (size, weight, color, etc) within the plugin!
Thanks for everything you've done!
-
Hey Megan, Thank you for the great feedback!
V2.2.0 just dropped!
Just added the ability to add a quick widget script to customize the Show Totals easily. As of right now this is as an added script, I am considering adding to a popup. Please see above updated documentation as an example.
Hope you all enjoy! =D
-
Hey Jim,
I just tested on v7.3.0.12008 and it works exactly as expected (I upgraded my environment this morning).
You could also try restarting the Sisense.Plugins service in the task manager. Also is the plugin named correctly? Maybe when you re-added the plugins the customBarColumnChart was renamed (does it have a -master at the end of the folder? The folder needs to be called customBarColumnChart).
Let me know if it still doesn't work.
Best, Elliott
-
Hey Guys,
I'm gonna be investigating this further this week. Will update once I have an update. For some of this, it might be out of my control, so I'll try my best to fix what's not working, and give a timeline for other features that might not be working. Might need to wait for a future version of Sisense after syncing with R&D.
Best, Elliott
-
Hey Guys,
After further investigation yesterday I understand why most of the sort breakby options aren't working in V7.4.0 to V7.4.2. The main reason is that some of the functionality that this plugin provides is making its way officially into the product in some of these most recent versions. Because of this push, some features have changed a little. As an example, breakby's are supposed to be sorted by a field called sortData, but unfortunately this is not the case in 7.4, and they seem to be sorted based on just the name of the field. I am actively working with R&D who made this change, so I suspect I'll have a fix for V7.4.3 or V7.4.4. Once that is tested and fixed I'll see what's going on with the PDF Export as well.
By the way, minor releases are supposed to be every 3-4 weeks going forward. So hopefully this shouldn't take too much time.
Best, Elliott
-
Hi Elliot,
This is very cool, well done! Not sure if you're still supporting this, but just wanted to let you know that this plugin for some reason prevents users from being able to change their password -- the change password modal window gets prevented from displaying some how. Not sure why, but the issue came up for us and after lots of trial and error found that the issue resolved itself after disabling this plugin. If it helps we are on Sisense version 8.2.2.
-
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.
Please sign in to leave a comment.
Comments
111 comments