한국투자증권 주식매매프로그램 만들기

파이썬 주식매매프로그램 만들기

Dojo/Chart

1. Dojo Line Chart & Chart Instruction

토폴로지 2013. 8. 8. 07:33

Dojo Line Chart Example Code

<html>

<head>

         <script src='dojo-release-1.9.1/dojo/dojo.js' ></script>

         <script>

        require([

            "dojox/charting/Chart",  "dojox/charting/plot2d/Lines",  "dojox/charting/axis2d/Default",  "dojo/domReady!"

            ], function (Chart) {

                    var chart = new Chart("test");

                    chart.addPlot("default", {type: "Lines"});

                    chart.addAxis("x");

                    chart.addAxis("y", {vertical: true});

                    chart.addSeries("Series 1", [1, 2, 2, 3, 4, 5, 5, 7]);

                    chart.render();

                });

    </script>

</head>

<body>

    <div id="test" style="width: 250px; height: 150px;"></div>

</body>

</html>

Table 1 Dojo Line Chart Code

Code 설명

우선 Chart 그리기 위해 Chart module Chart type Line 쓰기 위해 Line chart, 그리고 Chart 쓰일 축을 위해 axis2d 불러온다.

chart 생성을 하기 위해 해당 div id값을 넣어준다. addPlot으로 Chart default , Chart type Line으로 설정한다. 그리고 Chart 대한 x, y축을 추가하고, 그릴려고 하는 데이터 값을 addseries 나타낸 render 함수로 뿌려준다.

Dojo chart Instruction

우선 Chart 생성하기 위해 var chart = new Chart("test"); 적었는데 번째 인자인 "test" html body 뿌려줄 div id값이고 번째 인자로 chart 대한 title title 대한 위치 그리고 title Gap, Font, color 지정할 있다. 다음으로 chart 그리기 위해 기본적인 Fuction addPlot() 2개의 argument 가진다. 번째 argument name, 번째는 option object이다. name 경우 서로 다른 chart type 겹치게 그리고 싶을 경우 쓰인다. 예를 들어 하나의 chart안에 Line type Stack Area type 겹치게 그리고 싶을 경우 서로 다른 name 줘야 한다. option object chart type 결정한다. type 종류에 대해서는 다음과 같다.

<!--[if !supportLists]-->·         <!--[endif]-->Areas – Area under data line(s) will be filled

<!--[if !supportLists]-->·         <!--[endif]-->Bars – Horizontal bars.

<!--[if !supportLists]-->·         <!--[endif]-->ClusteredBars – Horizontal bars with clustered data sets

<!--[if !supportLists]-->·         <!--[endif]-->ClusteredColumns – Vertical bars with clustered data sets

<!--[if !supportLists]-->·         <!--[endif]-->Columns – Vertical bars

<!--[if !supportLists]-->·         <!--[endif]-->Grid – For adding a grid layer to you chart

<!--[if !supportLists]-->·         <!--[endif]-->Lines – Basic line chart

<!--[if !supportLists]-->·         <!--[endif]-->Markers – Lines with markers

<!--[if !supportLists]-->·         <!--[endif]-->MarkersOnly – Markers, sans lines

<!--[if !supportLists]-->·         <!--[endif]-->Pie – Goes great with punch!

<!--[if !supportLists]-->·         <!--[endif]-->Scatter – Cooler name for MarkersOnly

<!--[if !supportLists]-->·         <!--[endif]-->Stacked – Data sets charted in relation to the previous data set.

<!--[if !supportLists]-->·         <!--[endif]-->StackedAreas – Stacked data sets with filled areas under chart lines

<!--[if !supportLists]-->·         <!--[endif]-->StackedBars – Stacked data sets with horizontal bars

<!--[if !supportLists]-->·         <!--[endif]-->StackedColumns – Stacked data sets with vertical bars

<!--[if !supportLists]-->·         <!--[endif]-->StackedLines – Stacked data sets using lines

Table 2 chart type의 종류

 

option object 경우 그래프의 type이외에 shadow 넣거나, 그래프에 mark 찍거나, tension으로 그래프를 부드럽게 만드는 여러가지 option 있다. 자세한 사항은http://www.sitepen.com/blog/2012/11/09/a-beginners-guide-to-dojo-charting-with-amd-part-1-of-2/ 참고하면 된다.

addAxis() addPlot() 같이 2개의 name object option Argument 가진다 번째 argument axis name 결정한다. 만약 axis 필요없다면 굳이 addAxis() 이유는 없다. 혹은 개의 chart안에 개의 그래프를 그릴 2 이상의 axis 그리는 것도 가능하다. 가능한 최대 axis 개수는 4개이다. axis 여러 option중에 번째 option vertical인데 vertical true 설정하면 세로축이 되며 default value false이다. 번째 option fixUpper fixLower이다. 옵션의 역활은 그래프의 눈금을 조정하는 활이다. default value none이며 외에 major, minor, micro 존재한다. none으로 설정하게 되면 fixlower 경우 데이터의 최소값과 눈금의 값이 일치할 것이다. major 눈금의 단위가 10 설정되고 minor 경우에는 1이다. 따라 minor 설정할 경우 데이터 최소값이 7.2라고 가정하면 눈금은 6부터 보일 것이다. 밑 그림은 option 따른 눈금 크기

나타내주고 있다. 다른 비슷한 옵션으로는

includeZero 있다. includeZero 설정할 경우 눈금의 최소값이 0부터 시작한다. 혹은 min : 0 써서 최소값이 0부터 시작하게 수도 있다. 다른 옵션으로는 축에 label 붙인다거나 눈금에 색깔을넣거나 font 등을 지정할 있다. 기타 옵션은 http://www.sitepen.com/blog/2012/11/09/a-beginners-guide-to-dojo-charting-with-amd-part-2-of-2/ 참고 하길 바란다.

addSeries() argumnet name, data array, options object이다. name data array 있는 value들을 토대로 만들 그래프 이름이고, data array data 배열이다. 세번째 인자인 option object 번째 option stroke이다. stroke안에서는 color width 색깔이나 선의 굵기를 조절할 있다. 번째 option fill 그래프 면적에 대해 색깔을 채울 있다. 번째 option marker 그래프에서 value 특정 표시로 보이게 있다. marker 경우 세모, 네모, 동그라미와 custom style 정의가 가능하다. addSeries 관한 자세한 사항도 마찬가지로 위의 링크를 참고하길 바란다.

결과 화면



Figure 1 Table 1 결과 화면

반응형