Avatar billede priestie Nybegynder
05. oktober 2004 - 14:24 Der er 11 kommentarer og
2 løsninger

Grafplotter med logaritmisk koordinatsystem

Jeg skal bruge et javascript der kan tegne grafer ud fra et vilkårligt antal koordinatsæt. Det er koordinater der skal angives på en logaritmisk skala, så scriptet skal kunne inddele x-aksen logaritmisk.

søren
Avatar billede roenving Novice
05. oktober 2004 - 14:32 #1
Det er jo bare at bruge Math.log(værdi) til at beregne placeringen ...

-- hvad skal du bruge det til, hvor kommer værdierne fra ?-)
Avatar billede priestie Nybegynder
05. oktober 2004 - 15:42 #2
Ja, så får jeg den rigtige grafiske repræsentation, men jeg skal også bruge den rigtige skalering på x-aksen, så man kan aflæse x-værdien.

Jeg bruger pt. dette script: http://home.t-online.de/home/lutz.tautenhahn/diagram/
Det er et udmærket script, men jeg kan ikke gennemskue om man kan lave grafer med ulinær skalering på x-aksen. Jeg kan ikke se hvordan, og det er ikke beskrevet på hjemmesiden.
Avatar billede priestie Nybegynder
05. oktober 2004 - 15:43 #3
Jeg skal bruge det til at uskrive testrapporter fra nogle akustiske målingsoplysninger der bliver hentet fra en log-fil.
Jeg er blevet pålagt at det hele skal laves i javascript.
Avatar billede roenving Novice
05. oktober 2004 - 15:54 #4
Jeg tror du kan finde den her:

http://home.t-online.de/home/lutz.tautenhahn/diagram/

D.XScale // 0 = no scale; 1 = numeric (default); 2, 3, ... = date/time; string = numeric+unit
"function FunctionName" = FunctionName(ScaleValue)

Hvilket vil sige, at du skal sætte den funktion til den samme, som du indsætter værdier med, at:

D.XScale = "function Math.log";

-- eventuelt kan du lave en lille funktion, som gør det !-)
Avatar billede priestie Nybegynder
05. oktober 2004 - 16:39 #5
Jeg fandt det også lige. Jeg har også leget lidt med det i scriptet før jeg fandt det på siden.
Det virker ikke lige umiddelbart.
Jeg kigger lige på det iaften.

tak indtil videre
Avatar billede priestie Nybegynder
06. oktober 2004 - 01:36 #6
Jeg har rodet lidt med det, og det er ikke helt godt.
Hvis jeg laver alle y-værdier om til deres logaritmiske værdi, kan jeg opnå en liniær tegning af grafenen, der ser ud som om den var tegnet på logaritmisk graf-ark, men skalering på x-aksen duer ikke.
Denne kan jeg lave om med denne invers logaritmiske function:

function f(value){ return Math.exp(value) }

Jeg sætter XScale til "function f", og derved bliver skaleringen på x-aksen rigtig.

Så burde alle være glade, men der er nu det problem at grid linierne stadig er placeret liniært, og værdierne ved de enkelte grid's er ikke pæne (det er hel-tal, men det er ikke nogen pæn inddeling; 100, 167, 278, 464,...).
Der er altså det grundlæggende problem ved dette script, at det er lagt an på at tegne udelukkende med liniær grid inddeling. Det er kun tallene der bliver klistret på x-aksen man kan pille ved.

Et script der kan håndtere dette problem vil være at foretrække.
Eller måske man bare skulle pille i scriptet selv, men det vil nok tage lidt tid.

søren
Avatar billede roenving Novice
06. oktober 2004 - 09:56 #7
Tjah, hvis manden bare har været nogenlunde omhyggelig, er det største problem nok at finde mekanikken i scriptet, men det kan jeg måske kigge på om nogle dage, hvis du ikke selv finder ud af det !-)
Avatar billede priestie Nybegynder
06. oktober 2004 - 14:13 #8
Smid et svar, så får du 20 point for besværet
Avatar billede roenving Novice
09. oktober 2004 - 20:47 #9
Oki '-)
Avatar billede priestie Nybegynder
10. oktober 2004 - 13:58 #10
øhhh, kan man ikke splitte pointene op?
Avatar billede roenving Novice
10. oktober 2004 - 14:18 #11
Det kan man sagtens, du skal bare selv lægge et svar først, derefter vælge Avanceret i point-uddelingen !-)
Avatar billede priestie Nybegynder
10. oktober 2004 - 16:46 #12
tak for det..
Avatar billede roenving Novice
10. oktober 2004 - 16:55 #13
-- og tak for point ;~}

-- se iøvrigt http://expfaq.1go.dk for yderligere information om hvordan på Eksperten !-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester