Frage

Wenn Sie Zedgraph für Liniendiagramme und stellen IsSmooth auf true verwenden, werden die Linien schön gebogen anstatt harte Ecken / Winkel zu haben.

Während dies viel besser sieht für die meisten Graphen -in meiner bescheidenen Meinungsund gibt es einen kleinen Haken ist. Der Glättungsalgorithmus macht die Linie ein wenig nehmen ‚tauchen‘ oder ‚Bump‘ vor nach oben oder unten gehen.

In den meisten Fällen, wenn der Datenpunkt selbst glatt sind, ist dies kein Problem, aber wenn Sie Ihre Datenpunkte von etwa 0 bis 15, gehen die ‚tauchen‘ macht die Linie gehen unter der x-Achse, die es macht scheint als ob es gibt einige Datenpunkte unter Null (was nicht der Fall ist).

Wie kann ich dieses Problem beheben (prefably leicht;)

War es hilfreich?

Lösung

Keine einfache Antwort dafür. Halten Sie die Spannung in der Nähe von Null wird Ihre einfachste Lösung sein.

ZedGraph verwendet GDI DrawCurve Spannung Parameter Glätte aufzubringen, was wahrscheinlich ist Hermiteinterpolation. Sie können versuchen, Ihre eigene Cosinus Interpolation zu implementieren, die aufgrund ihrer Beschaffenheit lokaler Extrema halten. Sie können die diesen Link sehen zu sehen, warum: http://local.wasp.uwa.edu.au/~pbourke / Sonstiges / Interpolation /

EDIT: Website ist nach unten. Hier ist eine Cache-Version der Seite: http: //web.archive.org/web/20090920093601/http://local.wasp.uwa.edu.au/~pbourke/miscellaneous/interpolation/

Andere Tipps

Sie könnten versuchen, die myCurve.Line.SmoothTension Eigenschaft bis zu verändern oder nach unten und sehen, ob das hilft.

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