Построение круговой диаграммы
Привет, друзья!
Надоело ломать голову. Пытаюсь построить круговую диаграмму. Есть по 2 пары полей - Имя и Значение. Как описано в этом уроке, я высчитываю начальную и конечную позицию каждого сектора, учитывая, что длина всей окружности = 2П(6.28). Например, такие параметры: Красный = 50 Синий = 50 В этом случае Начальная позиция Красного = 0, Конечная позиция = 3.14 Начальная позиция Синего = 3,14, Конечная позиция = 6,28 Вот теперь я могу понять, что мне делать с этими значениями, как связать их с тригонометрическими функциями и высчитать позицию конкретной точки в пикселях на диаграмме. Подскажите пожалуйста или дайте ссылку на соответствующий материал. Спасибо! |
|
nikita.mmf, крутейшая ссыль, читал на вики об этом, но чтоб так подробно... спасибо!
|
Эвольвента окружности
http://ru.wikipedia.org/wiki/%DD%E2%EE%EB%FC%E2%E5%ED%F2%E0_%EE%EA%F0%F3%E6%ED% EE%F1%F2%E8
function matika(k){ var s = 10; var r = 10;//расстояние между витками(радиус окружности) var x=Math.floor(r*(Math.cos(k)+k*Math.sin(k))) var y=Math.floor(r*(Math.sin(k)-k*Math.cos(k))) var t =x+200;var l =y+200 document.write('<div style=\"position:absolute; top:'+l+'px;left:'+t+'px ;width:'+s+'px;height:'+s+'px;background:#00F;\">'+'</div>'); } window.onload=function (){ for(var i=50;i>0;i-=0.01){ //расстояние между div_ами(угол поворота радиуса окружности) matika(i); } } |
И?
|
Часовой пояс GMT +3, время: 08:36. |