A Calculated Dimension may slow chart performance. Favor creating new fields in the script when possible.
Calculated dimensions increase app opening time and may noticeably increase chart calculation time. Calculated Dimensions are not always "bad". Consider these two examples:
="Firstname' & ' ' & Lastname
It would likely be worthwhile to create this field in the data model as "Full Name" and drop the Firstname and Lastname fields from the model. The aggregate storage and performance will likely be improved.
=Timestamp(Shipdate + ShipTime)
A likely usage here is that aggregated analyses are done using the "Shipdate" dimension. Occasionally the app needs to display the full ship date/time in a detail table. In this scenario, it's best to continue using the Calculated Dimension. A "ShipTimestamp" field created in the data model would have many unique values and could therefore require significant storage. It's likely better to trade off some occasional calculation time rather than increase storage.
1. Filter using the flag.
2. Using the Chart Deconstruction feature, identify the calc time required for the calculated dimension.
If the calculated dimension contributes significant calculation time, consider options to replace the dimension with a more efficient alternative. For example, create a static field in script.
In this example the most efficient approach may be to move the set expression from the Dimension to the Measures.