Archive for the 'Ajax' Category
Canvas 3D Graph
Как Вы думаете, при помощи какой программы построен этот график? Excel? DPlot? Какой нибудь PHP скрипт? Нет, этот график сделан при помощи JavaScript и CSS. Называется этот JavaScript - Canvas 3D Graph.
Использовать этот замечательный скрипт очень просто.
- Подгружаем 2 JS файла. (excanvas.js нужен для IE, который не поддерживает тэг <canvas>)
- Создаём пару DIV-ов и нужный нам тэг CANVAS.
- Добавляем немного CSS.
CSS:
-
#g-holder {
-
height:620px;
-
position:relative;
-
}
-
-
#canvasDiv{
-
border:solid 1px #e1e1e1;
-
width:600px;
-
height:600px;
-
position:absolute;
-
top:0px; left:0px;
-
z-index:10;
-
}
-
#x-label{
-
position:absolute;
-
z-index:2;
-
top:340px;
-
left:580px;
-
}
-
-
#y-label{
-
position:absolute;
-
z-index:2;
-
top:10px;
-
left:220px;
-
}
-
-
#z-label{
-
position:absolute;
-
z-index:2;
-
top:540px;
-
left:10px;
-
}
-
-
#gInfo div.gText{
-
position:absolute;
-
z-index:-1;
-
font:normal 10px Arial;
-
}
-
- Готово. Теперь создаём объект и даём ему координаты того, что нужно нарисовать.
HTML:
-
<script type="text/javascript">
-
-
window.onload=function(){
-
-
//Initialise Graph
-
var g = new canvasGraph('graph');
-
-
//define some data
-
gData=new Array();
-
-
gData[0]={x:500,y:500,z:500};
-
gData[1]={x:500,y:400,z:600};
-
gData[2]={x:500,y:300,z:700};
-
gData[3]={x:500,y:200,z:800};
-
gData[4]={x:500,y:100,z:900};
-
-
// sort data - draw farest elements first
-
gData.sort(sortNumByZ);
-
-
//draw graph
-
g.drawGraph(gData);
-
-
}
-
</script>
-
Можно придумать очень много сценариев для использования этой полезной библиотеки с аяксом. Например показывать на графике в реальном времени посещения web сайта. Нужно всего лишь периодически запрашивать сервер, есть ли новые данные о посетителях, и если есть - дополнять график.
2 comments