Frage

Ich bin der Umsetzung einer Tag-Cloud auf einem mobilen Gerät. Die Details der Datenmodell usw., sind hier nicht besonders wichtig. Meine Frage bezieht sich auf die Skalierung von Tags:

Was ist die 'beste' Ausdrucks-Tag Frequenz Schriftgröße abzubilden?

Ich habe unter diesen Beitrag lineare und logarithmische Skalierung diskutieren und diese Antwort von Adrian Kuhn Skizze eines Polynom-Ansatz für die Inspiration. Allerdings scheine ich mit viel mehr Exploration zu diesem Thema einen Beitrag etwas Platz auf den interwebs zu erinnern.

Ich habe auch einige „ besten Praktiken “auf einem Blog, obwohl sind nicht sicher, der Vorsehung der besten Praktiken. Diese machen keinen Kommentar zu Frequenzskalierung.

Was Alternativen kann ich für Tag Skalierung haben, und das ist die bevorzugte / Standardmethode? Ich erwäge auch Mindestschriftgrößen, maximale Anzahl von Tags, Farben etc.

Edit: Gemäß der Diskussion in diese Frage , bin ich in die interessiert "Standard" Tagcloud, mit Schriftgröße Variationen.

War es hilfreich?

Lösung

arbeitete ich an einem kleinen Tag-Cloud-Projekt im letzten Jahr, in dem ich etwas entlang der Linien verwendet von

β = (int) (((maxθ - minθ) x ω) + minθ + 0,5)
wobei ω ein Gewichtungs zuvor berechnete gemäß irgendeinem Metrik (im Fall der Schrift Frequenz), sind minθ maxθ und untere und obere Grenze, und β ist der Endwert. Dies kann auf jede visuelle Charakteristik (Schriftgröße, Farbe, Gewicht, wenn unterstützt, etc.) angewandt werden.

Ich fand, dass die lineare und logarithmische Skalierung abhängig von Datensatz Verteilung neigte. In Datensätzen mit prominenten Ausreißer Ich fand TANH war nützlich für die ‚Glättung‘ der resultierenden Werte.

Andere Tipps

Es gibt eine ausgezeichnete Diskussion in diese pdf , die Skalierung, Clustering und Kürzen auf den Tags angezeigt werden soll.

Eine Lösung fand ich Werke schön wie folgt

font_size = (max_font_size - min_font_size) * (Math.sin(1.5*(X)) + minsize

wobei X der normalisierte Wert, den Sie möchten, auf Schriftgröße zur Karte

X = (this_value-min_value)/(max_value-min_value)

Dies erhöht Größe Differential für die unteren drei Quartile des Bereichs, wie die Wirkung der hohen Ausreißern zu minimieren

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top