Hallo,
ich möchte ein Diagramm logarithmisch darstellen und steh grad etwas auf
dem Schlauch...
Der maximale Wert ist aktuell 1400. Ich möchte den Wert ja nicht
verändern, nur Logarithmisch antragen.
Meine y-Achse hat eine feste Skalierung und kann nicht angpasst werden,
verändert sich aber in der Höhe, je nachdem welchen Wertebereich ich
gerade durchscrolle > ich werde manuell bestimmte Werte antragen (10,
100, 1000) und mir somit meine eigene Skala hinschreiben.
Nur wie muss ich die einzelnen Werte der Kurve und der Skala umrechen?
indem du nicht die Werte einträgst, sondern jeweils den Logarithmus
davon?
Sinnvollerweise zur Basis 10 für dein Diagramm.
Statt 0 schreibst in deinem Diagramm an die y-Achse dann 1, statt der 1
schreibst du 10, statt 2 eine 100 ...
Wenn die Werte auch kleiner als 1 sind: dann im Negativen statt der -1
eine 0.1 eintragen statt -2 eine 0.01...
> Nur wie muss ich die einzelnen Werte der Kurve und der Skala umrechen?
Eine Möglichkeit wäre, Logarithmen-Papier zu nehmen, falls es sowas noch
gibt ...
https://de.wikipedia.org/wiki/Logarithmenpapier
Mit "Null" (0) funktioniert das allerdings schlecht. ;-)
Ich habe mal mit gnuplot (sehr zu empfehlen) als Beispiel ein normales
lineares Diagramm gemacht mit einem Wert als horizontale Linie bei
y=3.1461 (das ist etwa der log10 von 1400) und in dieses Diagramm
handschrifltich das Umfrisieren auf logarithmische y-Achse eingetragen
als krakelige Handschrift mit dem Zeichenprogramm, vielleicht hilft dir
das - falls ich die Frage richtig verstanden habe.
Dabei wird aus y=0 eine 1 gemacht, aus 1 eine 10, aus 2 eine 100, aus 3
eine 1000 und aus 4 die 10000. Dadurch wird aus y=3.1461 flugs die 1400.
Danke!
Ich versteh das mit der Achse ja, nur meine praktische Umsetzung nicht.
Wenn ich ein logarithmisches Papier nehmen würde, könnte ich die
einzelnen Punkte von Hand übertragen, alles klar.
Aber wenn ich nun eine Wertekurve in elektronischer Form habe und diese
Kurve sich automatisch von der Höhe her auf den gerade sichtbaren
Wertebereich einstellt, wie kann ich in diese vorhandene Wertekurve die
"gleichen" Werte logarithmisch darstellen?
Ich habe testweise jeden Wert logarithmiert, doch dann bin ich natürlich
an einer ganz anderen Position und nutze den Chart nicht mehr voll aus.
D.h. ich muss auch die Achse logarithmieren und an der alten Position
von 1400 nun log(1400) hinschreiben?
Wie gehe ich am Besten vor??
Jede Zehnerpotenz hat bei der Darstellung auf dem Bildschirm am Ende
eine bestimmte Breite (oder Höhe) in Pixeln. Wie viele Dekaden Du
brauchst, hängt davon ab wie groß der Wertebereich ist, den Du
darstellen willst.
Ach ja, diese Nebenbedinung hier:
sunshineh schrieb:> Meine y-Achse hat eine feste Skalierung und kann nicht angpasst werden,> verändert sich aber in der Höhe, je nachdem welchen Wertebereich ich> gerade durchscrolle > ich werde manuell bestimmte Werte antragen (10,> 100, 1000) und mir somit meine eigene Skala hinschreiben.
ergibt nicht wirklich viel Sinn. Entweder eine Achse ist linear, oder
sie ist logarithmisch. "Ich will die Werte logarithmisch aben, aber die
Achse darf nicht logarithmisch sein" - wozu soll das gut sein?
Vielleicht möchtest Du mal eine Skizze zeigen, wie Du Dir das Ganze
vorstellst.
sunshineh schrieb:> Sind meine Gedanken zur Erstellung so korrekt?
Ehrlich gesagt weiß ich nicht, was Du mit maxWert bezweckst. Ggf.
solltest Du mal im WWW herumschauen, da gibt es sicherlich jede Menge
Hintergrundwissen zur logarithmischen Darstellung/Einteilung.
Ich würde aber nicht gerade ein Balken- oder Flächendiagramm wählen, da
dies die Aussage (meiner laienhaften Meinung nach) verzerrt. Ich
zumindest würde da intuitiv ein "Volumen" sehen, was nicht da ist und
auch nicht Kern der Aussage sein sollte. Kurz - ich würde es erstmal
schlicht falsch deuten.
Sinn macht es, denke ich, nur mit Linien oder Punkten. Hintergrund ist
es wohl, auch bei exponentiell sich verändern den Werten kleine Werte
noch grafisch beobachten und ausweisen zu können.