abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
včera 16:38 | Komunita

Byly zveřejněny videozáznamy přednášek a workshopů z letošní konference OpenAlt konané 5. a 6. listopadu v Brně. K videozáznamům lze přistupovat ze stránky na SuperLectures nebo přes program konference, detaily o vybrané přednášce nebo workshopu a dále kliknutím na ikonku filmového pásu. Celkově bylo zpracováno 65 hodin z 89 přednášek a workshopů.

Ladislav Hagara | Komentářů: 0
včera 11:30 | Komunita

Bylo oznámeno, že bude proveden bezpečnostní audit zdrojových kódů open source softwaru pro implementaci virtuálních privátních sítí OpenVPN. Audit provede Matthew D. Green (blog), uznávaný kryptolog a profesor na Univerzitě Johnse Hopkinse. Auditována bude verze 2.4 (aktuálně RC 1, stabilní verze je 2.3.14). Audit bude financován společností Private Internet Access [reddit].

Ladislav Hagara | Komentářů: 2
včera 06:00 | Komunita

Na YouTube byl publikován Blender Institute Reel 2016, ani ne dvouminutový sestřih z filmů, které vznikly za posledních 10 let díky Blender Institutu. V institutu aktuálně pracují na novém filmu Agent 327. Dění kolem filmu lze sledovat na Blender Cloudu. Videoukázka Agenta 327 z června letošního roku na YouTube.

Ladislav Hagara | Komentářů: 0
včera 01:02 | Zajímavý článek

Minulý týden byly vydány verze 1.2.3 a 1.1.7 webového poštovního klienta Roundcube. V oznámení o vydání bylo zmíněno řešení bezpečnostního problému nalezeného společností RIPS a souvisejícího s voláním funkce mail() v PHP. Tento týden byly zveřejněny podrobnosti. Útočník mohl pomocí speciálně připraveného emailu spustit na serveru libovolný příkaz. Stejně, jak je popsáno v článku Exploit PHP’s mail() to get remote code execution z roku 2014.

Ladislav Hagara | Komentářů: 1
8.12. 16:00 | Nová verze

Byla vydána verze 0.98 svobodného nelineárního video editoru Pitivi. Z novinek lze zmínit například přizpůsobitelné klávesové zkratky. Videoukázka práce s nejnovější verzí Pitivi na YouTube.

Ladislav Hagara | Komentářů: 1
8.12. 15:00 | Zajímavý software

Stop motion je technika animace, při níž je reálný objekt mezi jednotlivými snímky ručně upravován a posouván o malé úseky, tak aby po spojení vyvolala animace dojem spojitosti. Jaký software lze pro stop motion použít na Linuxu? Článek na OMG! Ubuntu! představuje Heron Animation. Ten bohužel podporuje pouze webové kamery. Podpora digitálních zrcadlovek je začleněna například v programu qStopMotion.

Ladislav Hagara | Komentářů: 5
7.12. 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
7.12. 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 2
7.12. 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 10
6.12. 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 27
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 806 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Graf v PHP

13.8.2013 19:41 Pavel | skóre: 16
Graf v PHP
Přečteno: 1378×
Ahoj, potřeboval bych v php nejlépe vytvořit graf, který bude ukazovat sledovanou veličinu v určité délce intervalu. Tedy žádný sloupcový graf, těch jsem našel plno, ale nikde jak kreslit spojitou čáru. Jedinné řešení co mi napadá, je připojit databázi, nastavit osy a pak podle indexů kreslit čáru od jednoho bodu k dalšímu a tímto projet celou DB. Je to jedinné a správné řešení? Přijde mi to moc krkolomné.

Odpovědi

13.8.2013 19:48 Kit
Rozbalit Rozbalit vše Re: Graf v PHP
Musí to být v PHP? Pokud se budou data průběžně měnit, asi bych raději použil Flot.
13.8.2013 20:54 Pavel | skóre: 16
Rozbalit Rozbalit vše Re: Graf v PHP
Díky, vypadá to zajímavě
Josef Kufner avatar 21.8.2013 22:17 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Graf v PHP
Flot je dobrý nástroj. Párkrát jsem ho použil, funguje pěkně. Navíc to ušetří serveru práci s kreslením.

V PHP si vygeneruješ potřebná data a v Javascriptu se postaráš o zbytek. Obvykle uložím data v JSON do atributu nějakého divu a ten pak nechám obecným kusem Javascriptu přetvořit na graf.
Hello world ! Segmentation fault (core dumped)
13.8.2013 20:30 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Graf v PHP
A jak jinak lze kresli spojnicový graf, než kreslit čáru od jednoho bodu k druhému, případně vytvořit třeba křivku?
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
13.8.2013 20:37 Kit
Rozbalit Rozbalit vše Re: Graf v PHP
Teď na to koukám. Vypadá to, že Pavel si asi myslí, že bude potřebovat víc než jeden SQL dotaz.
13.8.2013 20:56 Pavel | skóre: 16
Rozbalit Rozbalit vše Re: Graf v PHP
To je jasný, ale čekal jsem, že bude existovat nějaká funkce, které předám vstupní data a parametry a sama už potřebné udělá sama
13.8.2013 21:36 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Graf v PHP
Příloha:
Ju, takže hledáš PHP knihovnu na grafy. Těch je roj (phpChart, pChart).
Nebo si napiš vlastní fci, schválně jsem se jukl jak jsem to řešil před více než deseti lety, kdy PHP5 bylo předmětem debat v anarchistických kroužcích, je to sice zmatený kód a nebylo to zas tak moc řádků (pominu-li tu spline-u) viz příloha - člověk si aspoň pohraje, jdi do toho ;-).
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
14.8.2013 07:54 gsnak | skóre: 19 | blog: gsnak
Rozbalit Rozbalit vše Re: Graf v PHP
GD (standardna sucast php) obsahuje funkcie na kreslenie (ciary, texty, ...) a potom je mozne ulozit alebo priamo obrazit png/jpg/gif subor, pozri: imageline, imagepng, atd... XY graf je kodu tak na 15-20 riadkov.
DOGE: DE7q1kxqvoFek7UGWBWBt47QWJTRBqVNLL
14.8.2013 12:18 Pavel | skóre: 16
Rozbalit Rozbalit vše Re: Graf v PHP
Tak jsem se rozhodl, že napřed se naučim vytvářet obrázky v PHP a poté v JS. V php mam kus kodu a obrázek zobrazuju takto: header("Content-type: image/jpeg ");

imagepng($im);

Ale to mi nastaví i prohlížeč pro zobrazení obrázku a nemohu ho zobrazit v textu. Napadají mi jen prasárny jak to udělat, typu vložit stránku do stránky...
14.8.2013 12:23 Kit
Rozbalit Rozbalit vše Re: Graf v PHP
V textu použiješ odkaz <img src="obrazek...

Ten obrázek můžeš vložit i inline zakódováním do Base64, ale moc často se to nedělá.
14.8.2013 12:58 Pavel | skóre: 16
Rozbalit Rozbalit vše Re: Graf v PHP
to znamená že ten obrázek musím napřed uložit? To mi právě napadlo, ale myslel jsem, že místo cesty uvedu nějak proměnou s obrázkem.
14.8.2013 13:10 Kit
Rozbalit Rozbalit vše Re: Graf v PHP
Vůbec ho ukládat nemusíš. Prostě ho vygeneruješ ve chvíli, kdy je požadován od klienta.
14.8.2013 14:49 Pavel | skóre: 16
Rozbalit Rozbalit vše Re: Graf v PHP
Nechápu, můžeš prosím poslat nějaký kus kodu s tim generováním a následným zobrazením, jsem asi natvrdlej :-D
Josef Kufner avatar 21.8.2013 22:21 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Graf v PHP
Atribut src neobsahuje název souboru, ale URL. Tu URL, kterou používáš, když koukáš na samotný obrázek.
Hello world ! Segmentation fault (core dumped)
14.8.2013 14:26 R
Rozbalit Rozbalit vše Re: Graf v PHP
image/jpeg a hned za tym imagepng? To asi nebude dobre...
14.8.2013 14:58 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Graf v PHP
Soubor img.php (generovaný obrázek):
<?php
$im = imagecreate(100,50)
    or die ('Error');//?
$v = 0;
if(isset($_GET['var']))
  $v = (int) $_GET['var'];
if(($v > 255)||($v < 0))  
  $v=128;
$bgcolor = imagecolorallocate($im,$v,64,16);
$c1 = imagecolorallocate($im,250,250,250);
$c2 = imagecolorallocate($im,0,64,250);
$c3 = imagecolorallocate($im,0,0,0);
imagefilledellipse ($im,25,25,30,20,$c1);
imageellipse ($im,25,25,30,20,$c3 );
imagefilledellipse($im,27,26,16,14,$c2);
imageellipse($im,27,26,16,14,$c3);
imagefilledellipse($im,27,26,8,10,$c3);
imagecopy($im,$im,60,10,10,10,30,30);

header ('Content-type: image/png');
imagepng($im);    
imagedestroy($im);
exit();
Soubor test.html (stránka používající obrázek) obsahuje:
<img src="./img.php?var=128" alt="Oka" title="Oka" width="100" height="50" />
PS: Neplantat formáty obrázků!
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
Tarmaq avatar 14.8.2013 15:18 Tarmaq | skóre: 39
Rozbalit Rozbalit vše Re: Graf v PHP
mas tam chybu, v alt/title ma byt "Oči" ;]
Don't panic!
14.8.2013 15:40 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Graf v PHP
Na moje oka mi nesahej.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
14.8.2013 21:44 Pavel | skóre: 16
Rozbalit Rozbalit vše Re: Graf v PHP
Takže to je tak jak jsem myslel. Místo obrázku musím vlastně vložit jinou stránku kde ten obrázek generuji. Čekal jsem že bude existovat třeba nějaká funkce

img src=imagepng($im) alt="Oka" title="Oka" width="100" height="50" />
15.8.2013 08:19 gsnak | skóre: 19 | blog: gsnak
Rozbalit Rozbalit vše Re: Graf v PHP
Ale atribut SRC v tagu IMG chce url, jak tam mozes dat data? To proste nie je standardne html. Ukladat ho nemusis, url moze byt php stranka ktora vracia obrazok.
DOGE: DE7q1kxqvoFek7UGWBWBt47QWJTRBqVNLL
15.8.2013 11:51 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Graf v PHP
…jak tam mozes dat data?
Takto, ale nemyslím, že je to vhodné.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
15.8.2013 08:56 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Graf v PHP

Na základě tvého příkladu, doporučuji se zamyslet nebo přečíst nějakou dokumentaci k html ;-).

Kit ti psal, a je to z logiky věci jak funguje html - jsou v zásadě jen dvě možnosti jednu jsem už uvedl a druhá je zde.

Ukázka, dle mého nevhodná:
<?php
function getImage($v){
  ob_start();
  $im = imagecreate(100,50)
      or die ('Error');
  if(($v > 255)||($v < 0))  
    $v=128;
  $bgcolor = imagecolorallocate($im,$v,64,16);
  $c1 = imagecolorallocate($im,250,250,250);
  $c2 = imagecolorallocate($im,64,128,250);
  $c3 = imagecolorallocate($im,0,0,0);
  imagefilledellipse ($im,25,25,30,20,$c1);
  imageellipse ($im,25,25,30,20,$c3 );
  imagefilledellipse($im,27,26,16,14,$c2);
  imageellipse($im,27,26,16,14,$c3);
  imagefilledellipse($im,27,26,8,10,$c3);
  imagecopy($im,$im,60,10,10,10,30,30);
  imagepng($im);    
  $imData = ob_get_contents();
  ob_clean();
  imagedestroy($im);
  echo 'data:image/png;base64,',base64_encode($imData);  
}
?>
<img src="<?php getImage(128);?>" alt="Zapouzdřená oka" title="Zapouzdřená oka" width="100" height="50" />
Samozřejmě lze ještě věc ↓ (příklad neřeší práva zápisu a cesty), ale je to variace na totéž.
<?php
function getImage($v){
  $im = imagecreate(100,50)
      or die ('Error');
  if(($v > 255)||($v < 0))  
    $v=128;
  $filename = "oka_$v.png";
  if(!file_exists($filename)){    
    $bgcolor = imagecolorallocate($im,$v,64,16);
    $c1 = imagecolorallocate($im,250,250,250);
    $c2 = imagecolorallocate($im,64,128,250);
    $c3 = imagecolorallocate($im,0,0,0);
    imagefilledellipse ($im,25,25,30,20,$c1);
    imageellipse ($im,25,25,30,20,$c3 );
    imagefilledellipse($im,27,26,16,14,$c2);
    imageellipse($im,27,26,16,14,$c3);
    imagefilledellipse($im,27,26,8,10,$c3);
    imagecopy($im,$im,60,10,10,10,30,30);
    imagepng($im,$filename);    
    imagedestroy($im);
  }
  echo $filename;  
}
?>
<img src="<?php getImage(128);?>" alt="Množící se oka" title="Množící se oka" width="100" height="50" />
Pokud daný obrázek je využitý opakovaně m;že to mít své opodstatnění. Ale má to záludnosti, napčíklad v tom, že klient bez kontroly může plnit disk (v tomto případě jen 255 souborů, pokud by měl možnost modifikovat parametr pro volání fce getImage())
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
14.8.2013 16:58 klingac | skóre: 10 | Praha
Rozbalit Rozbalit vše Re: Graf v PHP
na grafy sa mi PHP osvedcila kniznica JpGraph
21.8.2013 14:37 Pavel | skóre: 16
Rozbalit Rozbalit vše Re: Graf v PHP
Taky se to snažím rozchodit, ale musím při zobrazení grafu nejprve načíst data do pole a to pak zobrazit, nebo mohu kreslit graf a zároveň načítat?
21.8.2013 18:31 Pavel | skóre: 16
Rozbalit Rozbalit vše Re: Graf v PHP
Tak jsem to již vymyslel, ještě bych se zeptal, existuje nějaký program v čem psát, aby mi to našeptávalo? Píšu zatím v pspadu.
21.8.2013 20:16 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Graf v PHP
PsPad na Linuxu? - WOW :-), Eclipse PDT.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.