In my application users specify a number of different classifications (approx. 3 - 10), supply some data which is already assigned to those classifications, and then my application reclassifies their data to satisfy some constraints. In general, users would prefer that things were not reclassified but they accept that they must be in order to satisfy the constraints. Their dislike for certain reclassifications is, however, variable.

For example, lets say there are three classifications: Red, Green and Blue. If a data point is Red, I need to know how badly they would like the data point to remain Red, or turn Green or turn Blue. If they would rather it turn Green than Blue they could tell me something like Red->Red: 1.0, Red->Green: 0.5, Red->Blue: 0.0. But the user needs to supply this information for all possible reclassifications.

Right now I have the user input numbers into a matrix like this:

Matrix Mockup

(forgive the poor mockup in excel, the actual interface looks cleaner, but is functionally the same)

This is the perfect input for my algorithm. It perfectly specifies the problem, but is not very easy to use. I get a lot of questions about how to fill it in and what the numbers represent (they only matter relative to one another.). People get the rows / columns mixed up. And when you have 10 or so classifications it's pretty intimidating.

I would like to hear any suggestions for a better interface! I would accept some reduced functionality to make it easier to use, I could retain the full matrix as an advanced option.

1 Answer 1


With the problems described:

I get a lot of questions about how to fill it in and what the numbers represent (they only matter relative to one another.)


People get the rows / columns mixed up.

You should first think of using the right terminology and accept that this sometime means that headers need to be more descriptive. Maybe use full sentences for headers, for example: "Reclassify if needed with the following priority".

That could be helpful but not enough to make a better distinction between the columns and rows. Also the numbers can be replaced by something more descriptive, it is all about prioritizing things right? Using a different approach for the matrix and the right terminology should solve the problem. As an example it could be something like this:

enter image description here

Or with more options you can also introduce drag-and-drop (or buttons) to position the items according to their priority:

enter image description here

  • Thanks for the suggestion. I appreciate parts of it, but the priorities high / medium / low only work if there are three classifications. If there are 10 I will quickly run out of words. Also, sometimes it is not a linear ordering, in that I might like changing red into green / blue equally but it certainly could not be orange. (Or something like that). All that being said, I do like the idea of prioritizing changes instead of explicitly specifying them. I will think about this a bit more. Thanks again!
    – Matt D
    Commented Oct 17, 2017 at 16:54
  • I added an idea for an undefinite number of classifications. Also you can add "Low" and "Medium" between "High"" and "None" for example. Or find different terminology that communicates the intention of this matrix.
    – jazZRo
    Commented Oct 18, 2017 at 12:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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