|
| |
|
|
| |
для: lilu
(28.09.2006 в 17:46)
| | | Линии, близкие к вертикальным, (особенно самая левая) стали прорисовываться.
А какого эффекты Вы ждете? | |
| |
|
|
| |
|
|
| |
для: Trianon
(28.09.2006 в 17:08)
| | | спасибо конечно, но по-моему ничего не изменилось, вот рисунок, может это мне кажется не знаю, но в принципе это не столь важно.... | |
| |
|
|
| |
|
|
| |
для: lilu
(28.09.2006 в 15:22)
| | |
ImageSetThickness ($pic, 3);
for ($i=1; $i<=31; $i++) {
imagestring($pic,10,27+($i*20),$picHeight-($p[$i]*20)-37,'.',$cRed); //tochki
$x1 = 30+($i*20); $x2 = $x1+20;
$y1 = $picHeight-($p[$i]*20)-25; $y2 = $picHeight-($p[$i+1]*20)-25
ImageLine($pic,$x1-1, $y1, $x2-1, $y2,$cBlue);//
ImageLine($pic,$x1+0, $y1, $x2+0, $y2,$cBlue);//
ImageLine($pic,$x1+1, $y1, $x2+1, $y2,$cBlue);//
}
|
| |
| |
|
|
| |
 4.4 Кб |
|
| |
для: cheops
(28.09.2006 в 12:50)
| | | наверное так ImageSetThickness ($pic, 3);
но она как-то странно - кусками линия прежняя, кусками потолще.... Что не так....Посмотрите рисунок | |
| |
|
|
| |
|
|
| |
для: lilu
(28.09.2006 в 08:58)
| | | >а что это имеет отношение к яркости линии :)
Нет, просто я пытаюсь разобраться что к чему (из-за обращения к базе данных, воспроизвести рисунок нельзя), я почему-то подумал, что линия горизонтальная и тут подошёл бы закрашенный квадрат. Вам слеудует воспользоваться функцией imagesetthickness(). Она позволяет установить толщину линии. | |
| |
|
|
| |
|
|
| |
для: cheops
(27.09.2006 в 22:55)
| | | $day это массив дней дат, в кот. абоненты были подключены
$myrow[1] это массив кол-ва абонентов
$p[$day] =$myrow["cnt"]; означает что каждому значению в маccиве $day соотв-ет значение в массиве $myrow["cnt"]
поэтому в цикле for ($i=1; $i<=31; $i++) { } используется $p[$i]- перебирая от 1 до 31 $i и подставляя в массив $p получаем для каждого числа месяца конкретное кол-во абонентов.
Ох надеюсь я понятно объяснила, а что это имеет отношение к яркости линии :) | |
| |
|
|
| |
|
|
| |
для: lilu
(27.09.2006 в 18:11)
| | | А что у вас в массиве $p хранится? | |
| |
|
|
| |
|
|
| |
для: cheops
(26.09.2006 в 17:33)
| | | это да теперь вот рабочий вариант
.....
<?
while ($myrow=mysql_fetch_row($rez1))
{
$day = (int) substr($myrow['0'], 8, 2);
//$cnt=(int)$myrow[1];
$p[$day] =$myrow[1];}
for ($i=1; $i<=31; $i++) {
imagestring($pic,10,27+($i*20),$picHeight-($p[$i]*20)-37,'.',$cRed); //tochki
ImageLine($pic,30+($i*20),$picHeight-($p[$i]*20)-25,30+(($i+1)*20),$picHeight-($p[$i+1]*20)-25,$cBlue);//liniya
}
ImagePNG($pic);
ImageDestroy($pic); ?>
.....
|
но линия такая тонюсенькая, как её размер больше сделать, если это возможно....., что бы она по ярче была | |
| |
|
|
| |
|
|
| |
для: lilu
(26.09.2006 в 15:43)
| | | У вас не закрыт цикл while в 55 строке. | |
| |
|
|
| |
|
|
| | Вот пытаюсь вывести график, вывела оси, их подписала, стрелки, решётку, а вот потом....
<?php
Header("Content-type: image/png");
$picWidth=660;
$picHeight=550;
$pic=ImageCreate($picWidth+2,$picHeight+2);
//colors
$cWhite=ImageColorAllocate($pic,255,255,255);
$cBlack=ImageColorAllocate($pic,0,0,0);
$cRed=ImageColorAllocate($pic,255,0,0);
$cBlue=ImageColorAllocate($pic,0,0,255);
$off=ImageColorAllocate($pic,214,214,214);
//стрелочки
imageLine($pic,30,0,34,14,$cBlack); //Y1
imageLine($pic,30,0,27,14,$cBlack); //Y2
imageLine($pic,$picWidth,$picHeight-25,$picWidth-14,$picHeight-29,$cBlack); //X1
imageLine($pic,$picWidth,$picHeight-25,$picWidth-14,$picHeight-22,$cBlack); //X2
//
$i=0;
$F=$i;
$g=0;
for ($i=0; $i<$picWidth+$picHeight; $i++) {
$F+=20;
$g+=1;
ImageLine($pic,$picWidth,$picHeight-$F-5,25,$picHeight-$F-5,$off); // Po Oy
ImageLine($pic,$F+1+9,$picHeight-15,$F+1+9,10,$off);//Po Ox
ImageLine($pic,10+$F,$picHeight-27,10+$F,$picHeight-24,$cBlack);//Pics1
ImageLine($pic,30,$picHeight-$F-5,25,$picHeight-$F-5,$cBlack);//Pics2
imageString($pic,2,$F+28,$picHeight-15,$i+1,$cBlack); //цифрыOx
imageString($pic,2,10,$picHeight-30-$F,$g,$cBlack); //цифры Oy
}
///////////////////////////////////////////////////////////////
//Osi Ox and Oy
ImageLine($pic,30,10,30,$picHeight-25,$cBlack); //Oy
ImageLine($pic,30,$picHeight-25,$picWidth,$picHeight-25,$cBlack); //Ox
imageString($pic,3,$picWidth-50,$picHeight-50,'DAYS',$cBlack); //DAYS
imageString($pic,3,35,20,'abonents',$cBlack); //
//данные у меня выводятся из базы, вот запрос
$rez1=mysql_query("SELECT data_vkl, count(id) FROM zajavki WHERE data_vkl LIKE '2006-09%' AND status='вкл.'
AND usluga>'100' AND usluga<'152' AND zajavka='добавить'
GROUP BY data_vkl");
while ($myrow=mysql_fetch_row($rez))
{
$day = (int) substr($myrow['0'], 8, 2);//массив чисел из даты, в кот. были подключены абоненты
$cnt=(int)$myrow[1];//массив кол-ва абонентов
$p[$day] =$myrow["cnt"];
for ($i=1; $i<=31; $i++) {
//////////////////////а вот что потом и как сам этот график вывести, ???? может так
imagestring($pic,3,30+($i*20),$picHeight-($p[$i]*20)-30,'.',$cBlack);
}
ImagePNG($pic);
ImageDestroy($pic);
?>
|
| |
| |
|
| |
|