Rules to Better Interfaces (Reports, Charts and Dates) - 7 Rules
If you still need help, visit Website Design and User Experience and book in a consultant.
Graphs are a great way to display data in an easy to follow visual format. Some graphs, however, are easier to read than others. We recommend staying away from 3-D Graphs and keeping it simple! If you have complex data, it's also a good idea to display 2 or 3 simpler graphs rather than one complex one - the aim of the game is to make digesting the information as simple as possible for your audience.
Line graph Line graphs are used to track changes over short and long periods of time. When smaller changes exist, line graphs are better to use than bar graphs. Line graphs can also be used to compare changes over the same period of time for more than one group.
Pie Chart Pie charts are best to use when you are trying to compare parts of a whole. They do not show changes over time.
Bar Graph Bar graphs are used to compare things between different groups or to track changes over time. However, when trying to measure change over time, bar graphs are best when the changes are larger. https://nces.ed.gov/nceskids/help/user_guide/graph/whentouse.asp
This is a fancy way of saying use the right graph for the right purpose. Pie graphs fulfill a specific requirement, unlike a bar graph which is more multi-purpose.
Pie graphs are used to show the general composition of an element. It's good for seeing at a glance what section is dominating, but it doesn't handle details very well.
Date formats should always be kept consistent across your application, more importantly, it should be kept consistent with the operating system's regional settings otherwise this will cause significant confusion for your users.
The best way to do this in your code is to grab the culture information from the application thread and use it to automatically format your Datetime data type. Do not use hard coded datetime formatting strings unless it's absolutely necessary.
startTimeTextBox.Text = resultResults.StartTime.ToString("dd/MM/yyyy hh:mm:ss");
Figure: Bad Example - Using hard coded formatting string
'VB.NET 'Initial CultureInfo settings for the application Public initialCulture As CultureInfo ... ... txtDateCreate.Text = CType(txtDateCreate.Tag, System.DateTime).ToString(initialCulture.DateTimeFormat)
Figure: Good Example - Using culture info to format datetime
Time formats should be consistent across your application, to give the application a very professional and consistent look.
In Outlook, the Calendar control has a number of important features:
- Saturday and Sunday are displayed at the end.
- Days that have data associated with them are bold
- The current day is highlighted with a box
Users are familiar with the Outlook calendar control. When the calendar controlis used it should incorporate all of these features of the Outlook calendar control.
We have a program called SSW Code Auditor to check for this rule.
When you are carrying out reporting (using Reporting Services) based on some OLAP cube you should change the "All Caption" property of each dimension to be have the value "All". By default the caption for the dimension will be "All " (e.g. All Products). This default is distracting when used in reporting solutions and doesn't particularly clarify anything anyway.
- Have Selection for filters e.g. Date Ranges
- Have Selection for chart options e.g. Show Legend
-
Don't have selection for chart groupings e.g. By Month or By Product
- Crystal and Access these are built into the report and it is very complex to have a generic solution.
- Also it is disorientating for the user to have this as a selection