Je dois créer une application web interne pour mon entreprise (avec asp.net C # et Telerik). J'ai une grille avec des rapports financiers à l'intérieur avec un KPI simple affichant le budget déjà utilisé en pourcentage:
Delta = 1 - (Budget - Actuals) / Budget
Mais Budget est souvent égal à zéro. Et parfois Réels est également égal à zéro. Mais par défaut, ma bibliothèque affiche le résultat de X/0 avec Infinity et le résultat de 0/0 avec NaN. Voici un exemple de ma grille:
Je ne sais pas quoi penser de ces valeurs ... Je ne pense pas qu'un zéro soit plus approprié car X/0! = 0.
Savez-vous ce qui est le plus pertinent pour l'utilisateur? Je ne peux pas vraiment demander aux utilisateurs, et je dois livrer cette grille rapidement mais je voudrais faire quelque chose avec une bonne UX.
Vous pouvez essayer d'utiliser une brève description de la cause réelle, par exemple pas de budget
Une solution courante pour les cellules de tableau qui ne sont pas disponibles ou applicables dans certaines situations (comme votre% Δ pour un budget de 0) consiste à utiliser le texte d'espace réservé n/a
(ou N/A
).
Vous pouvez utiliser une icône de point d'exclamation qui montre une info-bulle au survol pour expliquer exactement ce que cela signifie et ce qui manque/quelle valeur est mauvaise:
télécharger la source bmml - Wireframes créés avec Balsamiq Mockups
Vous pourriez envisager d'avoir un mot avec les utilisateurs et leur demander ce qu'ils pensent qu'ils devraient voir, mais attention, leur réaction initiale pourrait être "zéro", ce qui n'est DEFINITIVEMENT pas juste dans un sens mathématique.
Personnellement, je laisserais la sortie vierge, ou j'utiliserais peut-être le terme "non défini". S'ils veulent vraiment voir un symbole, je pense que vous pouvez y placer le symbole de l'infini (∞) en toute sécurité (ce n'est pas vraiment juste d'un point de vue mathématique, mais cela les empêche de penser qu'ils peuvent utiliser les résultats dans d'autres calculs).
La plupart des feuilles de calcul (OpenOffice Calc, Microsoft Office Excel et Google Spreadsheet) gèrent ces cas affichant une erreur non bloquante semblable à la "division par zéro":
Je pense que c'est le meilleur comportement, car il remplit le champ avec quelque chose de significatif pour l'utilisateur, mais en même temps, il ne "se démarque" pas trop et ne compromet pas l'expérience globale. Comme cela a été souligné dans les commentaires, vous devriez peut-être choisir quelque chose de plus descriptif que #DIV/0
, quelque chose comme Div. by zero
peut être.
Du point de vue de l'utilisateur, je préférerais une cellule vide, s'il est clair que cette cellule est calculée en divisant Budget par réel. Contexte: L'ajout d'un long texte ajoute beaucoup de bruit à la grille, surtout quand aucun budget n'est fréquent. Vous pouvez ajouter une info-bulle telle que la marque info bleu-vert Excel, qui indique "ne peut pas être calculé, car le budget est nul"), mais même cela peut être exagéré, si tous les utilisateurs sont formés aux calculs.
Soit:
En règle générale, assurez-vous simplement que l'utilisateur sait ce qui se passe avec la cellule.
J'utiliserais du texte de petite taille disant "DIV0" ou "INF"/",", dans un arrière-plan gris ombré avec un espace négatif autour. Il devrait ressembler à une icône pour montrer que ce n'est pas une valeur tapée ou calculée comme le reste. Mais le message peut toujours être lu clairement afin que la pertinence du problème soit apparente sans avoir à comprendre une icône d'erreur générique.
Pourquoi ne pouvez-vous pas faire une démonstration à certains de vos utilisateurs et leur demander de dire ce qu'ils pensent?
Ce sont deux situations différentes cependant, et un N/A peut être source de confusion. L'infini est bon pour x/0 tant que x n'est pas 0. Regardez le graphique de 1/x. À mesure qu'il se rapproche de 0, le groupe explose à l'infini. En tant que valeur limite, 0/0 est indéterminé, ce qui peut être n'importe quoi. x/x approche 1 lorsque x se rapproche de 0. x * x/x approche 0 lorsque x se rapproche de 0. Comme indice visuel, l'infini signifie que vous devez regarder la source du dénominateur de votre calcul pour voir pourquoi il est 0. NaN (pas un nombre) signifie que vous devez vérifier le numérateur et le dénominateur.
Lorsque le budget est nul et que les chiffres réels sont nuls, la différence (delta) doit être nulle! Il n'y a pas de différence entre 0 et 0.
Lorsque le budget est nul et que les chiffres réels sont élevés, la différence (delta) Je pense que cela a l'air génial en indiquant "Infinity%". Il est véridique, concis, significatif, élégant, non symbolique et non cryptique. Bon cadre, prenez un biscuit!
Lorsque le budget est élevé et que les chiffres réels sont nuls, je suis d'accord avec @CoDEmanX - j'aime l'info-bulle descriptive.
Cependant, vous pouvez constater que la meilleure chose à faire est de réaliser que les gens préféreraient que ces champs soient simplement laissés en blanc - dans les deux cas où le cadre souhaite insérer "infini" et "NaN". Il est difficile pour les humains de digérer le concept de l'infini et du NaN, surtout à côté des autres informations plus agréables que vous montrez. Ils auraient compris pourquoi il était vide assez rapidement, je pense.
Un joli cadre au fait.