I have a table where I display several columns with numbers in them and people can sort them in ascending or descending order. The one major problem is let's say I had 4 numbers 1 5 2 3 and I sorted them in ascending order 1 2 3 5 , what happens when the second number changes to 7?

Couple of options possible

  • Disable live data when the user clicks sort in any order and have a SWITCH at the top of the website to re-enable it (Brings a lot of questions, how long to keep it disabled ? until the user clicks live again? and then disable it once again if the person sorted again? This means everytime you sort something you have to go back and enable live data again)
  • Keep the sorting on and let the rows go up and down as the value in their columns change (I guess this will be horrible)
  • Sort once and let the column show ascending state with the up arrow even if the data inside the column is not in ascending order anymore (Not sure if that's fair. You sort once by an initial order, if the data changes at the next instant, the initial order is still maintained)
  • By default my table is sorted by the ID column, take the table back to the ID column if any data value changes (Very bad I guess since the user wont be able to see anything if it goes back to the default order)

Am I missing something? How do I handle this case?

  • Good question. 1) How many data points is the user dealing with at one time—a handful, a page, hundreds? 2) How often does the data update? Is it a regular interval, or does it appear random? 3) Do new data rows enter during this time as well, or just existing rows update? Aug 22 '18 at 14:41
  • 1
    An existing solution to a similar problem would be Windows' Task Manager. Perhaps you could use it for some research?
    – bace1000
    Aug 22 '18 at 14:47

I think the best option is the first one, give the user the control of when the live data is On, and u can show sort with an arrow in the header colum.

Live Data Control In the image i just put in place the tipical an arrow like google does with material design, but in case is "live" can use accent color with tooltip when is hover. In this way the user can know if the information is live or not, and if it is being ordered by a column or not. If the "live" control is Off, the arrow must be in color black. Sry for the bad english.


I think what you are missing, in this case, is the user context. In the end, it will all depend on what the user is trying to accomplish when sorting the data. I assume the user probably doesn't want to sort but is trying to answer a question instead. So, if you don't refresh the data on the sorted table, are they still answering their question? How do you ensure they get their best outcome?

One thing you could do, if sorting is particularly important to the user, is to lock the table on sorting mode and highlight the rows as they are updated. Google Analytics does this very well on their real-time events dashboard, with green highlights for an increase in the value and red for when it decreases. I believe they lock it because the bigger numbers at the top are less likely to change ranks and it makes the visualization less jarring.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.