This article describes how to use a Control Box to select which multi-variable questions to display in a table, chart, or visualization. The post contains the steps required to create a Page like this:
Requirements
Please note these steps require a Displayr license.
- A data set with at least two multi-variable questions to choose between.
- A Control Box (see How to Create a Combo Box Filter or How to Create a List Box Filter).
- An output (e.g., tables, chart, visualization) to control.
Additional requirements for Method 1:
- Your variables must be set together as either a Binary – Multi or Numeric – Multi.
- The questions you wish to choose between must have the same number of variables (answer codes).
- The same variable labels must be applicable for all questions, as these can't change dynamically.
Method 1 - chose between questions with the same number of variables
When the requirements for this method are met, you can follow the same process as you would when using a single-response question. See: How to Dynamically Change a Question Based on a Control Box.
Method 2 - other variables
When the number of variables and/or variable labels are different between the questions you wish to dynamically change using a control box, it is better to switch between tables instead of questions.
- Go to the Anything menu and select Page Design > Control > Combo Box (Drop-down).
- With the control selected, go to the object inspector > Control > Item List and input the variable set labels you wish to appear in the list (e.g., Age; Income; Gender ), separating all items in the list with a semi-colon (;).
- Change Selection Mode to Single Selection.
- Change When item lists changes to Select First.
- Still, in the object inspector go to Properties > General > Name and input the desired name (e.g. Question.control.box) to use when referencing the Control Box in the R code.
- Drag and drop questions you wish to show from the Data Sources onto the page to create a table. Repeat this step for all the questions you wish to show.
- OPTIONAL: Drag and drop a variable from the Data Sources onto the table itself into the Columns field to create a crosstab.
In this example, I have created three crosstabs to choose between:
- Select the tables, right-click and select Hide from the menu.
- Go to Calculation > Custom Code.
- Click on the Page where you want to position the output.
- Update and input the below R Code:
if (Question.control.box=="Age") table.Awareness.by.What.is.your.age else
if (Question.control.box=="Income") table.Awareness.by.What.is.your.income else
if (Question.control.box=="Gender") table.Awareness.by.what.is.your.gender - You can use the Calculation Output you created as the Data source for a visualization or another type of analysis.
See Also
How to Create a Combo Box Filter
How to Use Point and Click Inside R Code
How to Connect Filters to Controls Using R Code
How to Dynamically Change a Question Based on a Control Box
How to Select Which Rows or Columns to Show in a Visualization Based on a Control Box Selection
How to Switch Logos and Images Based on a Control Box Selection
How to Control Which Calculations Filtered in View Mode
How to Change Weighting using a Control Box
How to Use a Control Box as an Input for Calculations
How to Use the Same Control on Multiple Pages