Control to hide column


How can I setup a control filter to show or hide columns

using the screenshot above, if my user do not want to see “industry field”, they can uncheck “Industry” checkbox and QS will remove that column altogether. I have searched a few thread that it’s possible but doesn’t have any detailed step to arrive at this outcome.

Greatly appreciate any advice. thanks!

1 Like

Hi @LeonardLai QuickSight doesn’t support allowing users to dynamically change the chart, but if you use free form layout you could create 2 charts and show one or the other depending on their selection.
There is an example of this on Demo Central for Interactivity - Dynamic Dimensions and Measures. If you click the blue analysis button on the left of the screen you can see how it has been implemented.

1 Like

Hi @Steph ,
thanks for the reply.
would it mean potentially I will need to have 8-10 charts if i want to cater this behavior for 8-10 columns in the sample screenshot?


unfortunately yes.
I used a slider as a control and depending on the selection in the slider, I show the corresponding table.

When you start creating all the tables, start by having every table under each other, so you can edit them more easily.
When you are done, you can edit the position of every table in the table settings to the same x and y coordinates.

I sent in a feature request to hide columns with only null values. Then we could do this with only one table.


1 Like

Thanks @thomask ,
would you have any reference guide on how to configure your setup?

I have been thinking about the same thing.

The route i’m taking is to have a 0/1 value in the dataset which I can use as headers, add the filter header into a pivot with the named headers underneath. Then hide the 0/1 header but control with a parameter through a filter.

When filtering it then hide or displays 1 and 0 columns.

1 Like

@widnie can you please explain more about this solution

Hi, could you explain a little bit more please?

If I am understanding it right, you just want the column to change the values to either Industry or Product when user select one of these.

  1. Create a parameters “selection” and give it a static default “Industry”
  2. Create a drop down control (single selection) and give this control 2 values i.e. Industry and Product
  3. Create a new calculation “Industry or Product” and use an ifelse condition based on parameter value… ifelse($selection = ‘Industry’, {Industry}, {Product}). This will dynamically change the column values every time the “selection” parameter value changes
  4. Add the new calculation “Industry or Product” to the table.
  5. To change the name of the column dynamically based on user selection, click the format option for the table and in the Group-by Column Names section, under “Industry or Product” column add the parameter <<$selection>>

The same approach can be used to dynamically change any widget. You just used a column which is controlled based on a parameter value and every time the parameter value changes, the widget gets updated. This is quite helpful where you want to run multiple combination of calculations based on user selection on the same widget.