Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wykresy generowane ze zmiennych
Fibolg
post
Post #1





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


Zastanawiam się teraz nad metodą generowania wykresów bądź to słupkowych, bądź liniowych może nawet kolistych...? Za pomocą czego je robicie? Biblioteka GD? Mógłby ktoś zarzucić jakimś prostym przykładem bo narazie z tą biblioteką jestem na poziomie "Hello World" (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
tiraeth
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


  1. <?php
  2. // Słupkowy wykres dziewięcioelementowy, zapełniony losowymi wartościami
  3.  
  4. srand(time());
  5. for($i=0; $i<10; $i++) { $liczby[$i] = rand()%10; }
  6.  
  7. header(&#092;"Content-type: image/gif\");
  8.  
  9. // Tworzymy obrazek, tło naszego wykresu; może to być np. plik jpg
  10. $rysunek = imagecreate(100, 100);
  11.  
  12. // Tworzymy kolory: biały i czerwony
  13. $kolor_b = imagecolorallocate($rysunek, 255, 255, 255);
  14. $kolor_c = imagecolorallocate($rysunek, 0, 0, 0);
  15.  
  16. // Wypełniamy obrazek białym kolorem
  17. imagefill($rysunek, 0, 0, $kolor_b);
  18.  
  19. for($i=0; $i<10; $i++)
  20. {
  21. $kolor_slupka = imagecolorallocate($rysunek, 25*$i, 25*$i, 0);
  22. imagefilledrectangle($rysunek, $i*10+3, 90-$liczby[$i], $i*10+7, 90, $kolor_slupka);
  23. imagestring($rysunek, 1, 3+$i*10, 91, $liczby[$i], $kolor_c);
  24. }
  25.  
  26. imagegif($rysunek);
  27. ?>


Na podstawie książki pt. PHP4: Ćwiczenia praktyczne (wyd. Helion)

(IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

poprawiono błędy (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Ten post edytował Tiraeth 6.12.2004, 20:35:59
Go to the top of the page
+Quote Post
Fibolg
post
Post #3





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


Już po poprawieniu tego Twojego skryptu (połknąłeś nawias i jedną zmienną) cały czas błąd:
Cytat
<b>Fatal error</b>:  Call to undefined function:  imagecollorallocate()

Już dawno z tej książki nie korzystałem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Może jakieś inne pomysły - na większe projekty? Może wykresy liniowe?
Go to the top of the page
+Quote Post
rogrog
post
Post #4





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


Cytat(Fibolg @ 2004-12-06 21:24:59)
Cytat
<b>Fatal error</b>:  Call to undefined function:  imagecollorallocate()

powinno być przez jedno l: imagecolorallocate

Cytat(Tiraeth)
  1. <?php
  2.  
  3. srand(time());
  4. ?>

Cytat(manual: srand)
Notatka: Począwszy od php 4.2.0, nie trzeba już inicjować generatora liczb losowych przed użyciem.
Go to the top of the page
+Quote Post
tiraeth
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Sorki ale to z pośpiechu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Już poprawiam kod...

@rogrog: a skąd wiesz jaką wersję php ma autor tematu ? (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
Fibolg
post
Post #6





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


Teraz z kolei
Cytat
<b>Fatal error</b>:  Call to undefined function:  imagegif()

W tej chwili sprawdzam to na krasnalu 2.7 czyli 4.3.9 oraz 5.02 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
tiraeth
post
Post #7





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


No to już wiemy czemu nie dzioba (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Walnij phpinfo() i sprawdź wersję GD.... do imagegif musi być minimum 2.0

możesz też zrobić tak:

Zamień header("Content-type: image/gif") na header("Content-type: image/png")
Zamień imagegif($rysunek) na imagepng($rysunek)

Spowoduje to wywalenie pliku jako PNG a nie GIF (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ale zalecam zainstalowanie GD2+ (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
rogrog
post
Post #8





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


Cytat(Tiraeth @ 2004-12-06 21:34:07)
@rogrog: a skąd wiesz jaką wersję php ma autor tematu ?

hehe Tiraeth... nie powiedziałem że to źle, tylko zwróciłem uwagę, że manual mówi że od 4.2 nie musi tego być (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Fibolg
post
Post #9





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


UUU miiiist ;P

Cytat
GD Version  bundled (2.0.15 compatible) 

Wszystkie opcje enabled. Działałem już na GD ale na plikach png i te rzeczywiście działają, ale nie jest to chyba wina biblioteki, skoro ta jest 2.0 prawda?



Można dopytać który to skrypt w książce bo nie mogę znaleźć? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Fibolg 6.12.2004, 20:53:17
Go to the top of the page
+Quote Post
tiraeth
post
Post #10





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


str. 111-112 (mój skrypt zmieniony (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) )

btw. No to zmien gif na png i tyle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
rogrog
post
Post #11





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


Cytat(manual: imagegif)
Notatka: Since all GIF support was removed from the GD library in version 1.6, this function is not available if you are using that version of the GD library.


Co oznacza że w wersjach GD wyższych niż 1.6 nie ma obsługi GIF.

AFAIR, z formatem GIF były jakieś problemy licencyjne, firma która jest właścicielem patentu kazała sobie słono płacić autorom oprogramowania generującego pliki w formacie GIF, więc z darmowego php zostało to usunięte. Do GD v.>1.6 można chyba dołączyć generowanie GIF, ale trzeba oddzielnie opłacić licencję.
Go to the top of the page
+Quote Post
Leezard
post
Post #12





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 19.09.2004
Skąd: Uć

Ostrzeżenie: (0%)
-----


witka wszystkim

wracajac do tematu, znaczy sposobow generowania wykresow, to ja osobiscie uzywam PHPlot
Bardzo fajny, prosty sposob tworzenia baaaardzo roznych wykresow
Go to the top of the page
+Quote Post
Fibolg
post
Post #13





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


No w sumie to nie takie proste jest żeby zmienić png na gifa (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ale dzięki za wyjaśnienie sprawy z tą GD. Wiecie może jeszcze dlaczego jak wgrywam na płatny serwer skrypt się wykonuje, wszystko jest ok itd ale nie może zapisać obrazka na dysku? Pozdrawiam
Go to the top of the page
+Quote Post
phpion.thc.net.p...
post
Post #14





Grupa: Zablokowani
Postów: 11
Pomógł: 0
Dołączył: 22.11.2004
Skąd: Dabrowa Gornicza

Ostrzeżenie: (0%)
-----


Na twoim dysku czy na serwerze? :) <hahaha>
Go to the top of the page
+Quote Post
Fibolg
post
Post #15





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


@phpion.thc.net.pl, ale żem się uśmiał (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Na dysku serwera
Go to the top of the page
+Quote Post
tiraeth
post
Post #16





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat("rogrog")
Co oznacza że w wersjach GD wyższych niż 1.6 nie ma obsługi GIF.


rog.... kolejny nie wypał (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Cytat("EN")
Notatka: Since all GIF support was removed from the GD library in version 1.6, this function is not available if you are using that version of the GD library.


Cytat("PL")
Obsługa GIF w bibliotece GD w wersji 1.6 jest nie dostępna, ta funkcja nie będzie dostępna jeżeli będziesz korzystać z tej wersji biblioteki.


Mam pytanie co masz z Angielskiego..... bo Twoje 'spolszczanie' textów nadaje się do działu OffTopic: Englisz baj rogrog........


Zainstaluj GD w wersji 2
Go to the top of the page
+Quote Post
Vengeance
post
Post #17





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


po 1. http://www.phplot.com/
po 2. http://strefaphp.net/index.php?page=artykuly&what=view&id=7
Go to the top of the page
+Quote Post
Fibolg
post
Post #18





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


Cytat
Zainstaluj GD w wersji 2

Przecież pisałem, że mam wersję 2 :/

@Vengeance, dzięki za artykuł, ale myślę, że jednak ładniej prezentują się dobrze zrobione wykresy za pomocą GD. Takie już daaaawno robiłem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Macie może pomysł jakiś jak rozwiązać sprawę wykresów liniowych bądż też kolistych?
Go to the top of the page
+Quote Post
rogrog
post
Post #19





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


Cytat(Tiraeth @ 2004-12-07 15:58:26)
Mam pytanie co masz z Angielskiego..... bo Twoje 'spolszczanie' textów nadaje się do działu OffTopic: Englisz baj rogrog........

no moj ulubiony Tiraeth (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

ok przyznaje sie do bledu - nie popatrzylem dokładnie a napisałem to co kiedyś tam czytałem.

a z angielskiego mam 6
Go to the top of the page
+Quote Post
Fibolg
post
Post #20





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


Ja widzę że wy po prostu powinniście iść raz usiąść i spić piankę z piwka razem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) To ile już jest w "przyznawaniu się"? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 22:01