1. A method comprising: receiving input corresponding to a modification of an existing visualization, the modification including adding or removing a dimension of data to one or more dimensions associated with the existing visualization; determining a plurality of visualization configurations for a plurality of visualization types, the plurality of visualization configurations including the modification to the existing visualization; computing, by one or more processors, a plurality of configuration scores for the plurality of visualization configurations; selecting, based on the computed configuration scores, a particular visualization configuration from the plurality of visualization configurations; and causing an updated visualization corresponding to the particular visualization configuration to be rendered.