Görbe rajzolása GD-vel
Sziasztok!
Egy diagram rajzoló osztályon munkálkodom egy ideje.
Egy vonaldiagramot úgy készítek el, hogy az egyes megjelenített pontok közé egy egy egyenest húzok.Minél többet tesztelem, annál jobban szemet szúr ennek a módszernek a hátránya: egy-egy ilyen diagram rettenetesen "fűrészfogas" tud lenni. Arra gondoltam, hogy "sebaj, majd illesztek görbét a pontsoromra", de miután két napot végig bogarásztam, arra a megállapításra jutottam, hogy csak swf, és pdf képek/dokumentumok generálásakor lehet görbét (curve) rajzolni.
Szóval a hosszú bevezető után, íme a kérdésem:
Megoldható-e GD-vel, hogy görbét illesszek egy sor pontra?
■ Egy diagram rajzoló osztályon munkálkodom egy ideje.
Egy vonaldiagramot úgy készítek el, hogy az egyes megjelenített pontok közé egy egy egyenest húzok.
for ($i=1;$i<count($pontok);$i++) {
$j=$i-1;
ImageLine($im, $pontok[$j]['x'], $pontok[$j]['y'], $pontok[$i]['x'], $pontok[$i]['y'], $szin);
}
Szóval a hosszú bevezető után, íme a kérdésem:
Megoldható-e GD-vel, hogy görbét illesszek egy sor pontra?
ImageArc
Ezen kívül még hasznos lehet az imageantialias használata is, ezzel elkerülendő a fűrészfogakat.
--------
Poetro
elmélet
Na én ezt a nagyon durva kiugró, értékek megjelenítését szeretném finomítani. Merthogy egy vonaldiagram (szerintem) egy folyamatot ábrázol, úgy, hogy csak bizonyos időpontokban történt mérés. Erre egy nagyon jó példa lehet a hőmérséklet változás, mert nincs folyamatos mintavétel, de az egyes mintavételek között, ugye, van átmenet. Na én ezt az átmenetetet szeretném kicsit finomítani.
Ez volt az elmélet :)
Az ImageArc/ImageFilledArc függvényeket én is megtaláltam, de eszembe sem jutott, hogy egy görbét elipszis darabokból is össze lehet rakni. A hozzászólások között találtam egy ImageCurveDown nevű functiont, de mivel sosenem voltam egy matek zseni, képtelen vagyok értelmezni, és rájönni, hogy hogyan is működik.
Akkor ebben kérhetek egy kis seítséget?
TikuVoltam
Ma is holnap fekszünk le, mint tegnap