PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dynamische Achsenbeschriftung


Pinoccio
2010-04-26, 00:32:30
Problem ist folgendes: Ich zeichne eine zoombare Karte, in die auch das Gradnetz eingeblendet werden soll. Nun muß mein Programm also dynamisch entscheiden, welche Linien es zeichnen soll, denn es sollen ja möglichst glatte Gradzahlen sein. Ich will aus Platz- und Übersichtlichkeitsgründen nun mindestens 2 und maximal 4 Linien haben.

Beispiele(immer nur eine Achse):
Kartenausschnitt - gewünschtes Ergebnis
11.8 bis 13.3 - 12 13
12.45 bis 27.3 - 15 20 25
1.23 bis 1.88 - 1.25 1.50 1.75
1.3 bis 49.7 - 15 30 45
1.632 bis 2.01 - 1.7 1.8 1.9 2.0
17.02 bis 20.8 - 18 19 20

Wie stelle ich das am cleversten an?
Meine Versuche, die ästhetischen Entscheidung zu formalisieren, sind leider bislang wenig erfolgreich.

Das Problem tritt ja auch bei Achsenbeschriftungen von Plots auf, also hab ich mal MATLAB befragt. Dort werden Schritte von 1, 2 oder 5 genutz - entsprechend skaliert. Verkleinert man die Figure, so staucht MATLAB und reduziert die Anzahl der Ticks, aber es bleiben im Extremfall 6 Ticks.
Beispiele:
http://www.abload.de/img/gridnssm.gif (http://www.abload.de/image.php?img=gridnssm.gif)
Ist also auch nicht exakt das, was ich bräuchte.
(Ich hätte gerne für die letzten beiden 27 30 33 36 (oder 30 35) und 32 36 40 44 (oder 35 40))

mfg

Trap
2010-04-26, 08:24:53
Du kannst eine Hässlichkeits-Metrik einführen und dann eine Optimierungsmethode auf die Beschriftungsgenerierung loslassen.

pest
2010-04-26, 08:42:08
wähle die ganzahligen Werte die zur linken und rechten und zu ihren Nachbarn möglichst den gleichen Abstand haben

Pinoccio
2010-04-26, 08:42:23
Du kannst eine Hässlichkeits-Metrik einführen und dann eine Optimierungsmethode auf die Beschriftungsgenerierung loslassen.In etwa so eine Idee hatte ich dann beim Einschlafen auch noch. Ich versuche mich mal dran.
wähle die ganzahligen Werte die zur linken und rechten und zu ihren Nachbarn möglichst den gleichen Abstand habenMir scheint, wir haben ähnliche Arbeitszeiten. ><
Könntest du das ein wenig konkretisieren? Mir ist nciht ganz klar, was bzw. wie du das meinst.

(Mein eigentlicher Plan war ja, daß mir eine Lösung einfällt, während ich die Frage präzisiere, aber der ging leidernciht auf.)

mfg

pest
2010-04-26, 17:50:24
(Mein eigentlicher Plan war ja, daß mir eine Lösung einfällt, während ich die Frage präzisiere, aber der ging leidernciht auf.)


das hofft man doch oft

hm, was ich meine...

1. schritt: du schaust wieviele ganzahle werte in dein intervall passen
und wählst alle 2 oder 4 elementigen Mengen daraus aus.

2. schritt: aus den erhaltenen mengen wählst du die aus, die im mittel
den geringsten abstand zur rechten und linken intervallgrenze besitzt.