Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.10.2012, 20:34
Интересующийся
Отправить личное сообщение для Женя150 Посмотреть профиль Найти все сообщения от Женя150
 
Регистрация: 10.09.2012
Сообщений: 24

не строится график
<html>
<head>
<script>
var aX= new array("Один", "Два", "Три", "Четыре", "Пять", "Шесть");
var aY= new array(1, 2, 3, 4, 5, 6);

var ky=10, kx=60;
var x0=100, y0=200;
var xstr="";
var x1;
var x2;
var y1;
var y2;
for(i=0; i<aX.length-1; i++) {
x1=x0+kx*i;
y1=y0-ky*aY(i);
x2=x0+kx*(i+1);
y2=y0-ky*aY(i+1);

xstr+=line("point.bmp",x1,y1,x2,y2,4); 

}

for(i=0; i<6; i++) {
xstr+="<b style='position:absolute;top:"+(y0-i*30-10)+":left:75'>"+i*3+"</b>";
 if (i>0) {
 
xstr+=line("point.bmp", x0, y0-i*30, 1,2);

xstr+=line("point.bmp",x0+kx*i, 50, 1, 2);

}

xstr+="<b style='position:absolute;top:"+(y0+5)+";left:"+(x0+kx*i)+"'>"+aX[i]+"</b>";

}

xstr+=line("point.bmp", x0,y0,x0,50,2); 

xstr+=line("point.bmp", x0,y0,x0+5*kx, y0,2);

document.write(xstr); 


</script>






</head>

<body>
</body>
</html>



Скажите пожалуйста, почему ничего не отображается и как сделать, чтобы заработало
Ответить с цитированием
  #2 (permalink)  
Старый 28.10.2012, 20:39
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

Женя150, как минимум необходима функция line, которая у вас используется раз 6, но нигде не объявлена...
Ответить с цитированием
  #3 (permalink)  
Старый 28.10.2012, 21:31
Интересующийся
Отправить личное сообщение для Женя150 Посмотреть профиль Найти все сообщения от Женя150
 
Регистрация: 10.09.2012
Сообщений: 24

ой, я не скопировала ф-ю))
function line(pict_file,x1,y1,x2,y2,n,s){

if(!pict_file)
pict_file="point.bmp";
if(!s)
s=0;
var clinewidth="";

if(n)
clinewidth="WIDTH="+n+"HEIGHT="+n;
var xstr="";

var xstr0='<IMG SRC="'+pict_file+'"'+clinewidth+'STYLE="position:absolute;';

var x,k, direct;
var vertical=Math.abs(y2-y1)>Math.abs(x2-x1);
if (vertical){
direct=(y2>y1);
x=y1;
k=(x2-x1)/(y2-y1);
}
else {
direct=(x2>x1);
if(direct)
x=x1;

else x=x2;
k=(y2-y1)/(x2-x1);
}

var i=0;
var draw=true;
while(true){
if(!vertical){

if(draw)
xstr+=xstr0+'top:'+(y1+k*(x-x1))+':left'+x+'">';

if(x==x2) break;
if(direct) x++
else x--
} else {
if(draw)
xstr+=xstr0+'left:'+(y1+k*(x-y1))+':top'+x+'">';
if (x==y2) break;
if(direct) x++
else x--
}
if(s>0&&i>s){
draw=!draw;
i=0;
}
i++
}

document.write(xstr);
}
Ответить с цитированием
  #4 (permalink)  
Старый 28.10.2012, 21:41
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

Женя150, думать уже не охото...но все же в строках 37 и 44 функции нужно как то так...
...
xstr+=xstr0+'top:'+(y1+k*(x-x1))+';left:'+x+'">';
...
xstr+=xstr0+'left:'+(y1+k*(x-y1))+';top:'+x+'">';
...

и лучше не использовать одинаковые имена переменных...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
График на jQuery Mutagena jQuery 5 01.11.2015 02:39
Как нарисовать график на javascript? Бобр Общие вопросы Javascript 21 30.03.2014 17:27
не знаю как построить график Женя150 Общие вопросы Javascript 0 22.10.2012 17:09
Нестандартный график rainurka Элементы интерфейса 17 02.06.2011 00:51
Он-лайн график Flot забивает память ia102 AJAX и COMET 3 02.03.2011 15:34