In his book "The Design of Everyday Things", Don (Donald) Norman introduced several basic user interface design principles and concepts. Those principles are normally important in the fields of Industry Design and Human-Computer Interaction. Nevertheless, those principles are also important in Data Visualisations.
We learnt throughout our lives, by using cassette players, mp3 players, video cassette recorders, itunes, YouTube etc, that there are special symbols used for play, pause, stop, and fast forward.
Thus, if you are going to design an interactive visualisation and want your users to press on a certain button for it to start playing and other button for it to stop, you better stick to buttons with the same symbols your users are used to press on when dealing with their music players. This is what is known as consistency, and as Steve Krug pointed out, this makes your users think less, as they use their intuition more.
Consistency is what makes us stick to representing higher values with longer lengths or bigger areas and not the other way round.
Using the music player controls again, we can see that arrows on the fast forward point to the right while the arrows on the backward button point to the left. The directions here are mapped to the sense of the direction the users have, especially those who have their languages written from left to right. You may need to redesign the arrows directions if your target audience speak Arabic, or any similar language that is written from right to left.
The same rule is applicable in data visualisation. you should make sure that there is a proper mapping between your between your visuals and control and their effects.
If some parts of your data visualisation are clickable, they better have different colour, style or typeface than the parts that are not clickable. That’s why links in webpages are normally underlined and blue.
Functionality which does not have a visual representation can be hard to discover and find. Thus, even for applications that have keyboard shortcuts, they still have visible buttons and menus to achieve the same actions.
The users should also be aware of the system’s current state. Let’s assume we are going to show a timeline for a series of events across history, and there is a scroll button for them to traverse the different years. You should make sure to display the year they are on, whenever the scroll’s position is changed.
If one visualisation takes some time before loading after the user presses on a button, you should make sure you give them any feedback to tell them that the graph is being reloaded and to acquire that you have received their button press. That’s why the mouse cursor changes to a sandclock on some Windows system when the computer is busig doing some stuff, and web applications have their special idioms to tell you that some items are being loaded.