본문으로 바로가기

Open Flash Chart + PHP

category 코딩/PHP 2011. 12. 23. 15:04

다운로드 링크 : http://teethgrinder.co.uk/open-flash-chart-2/

 

우선 여기를 클릭해서 최신 버전의 zip 파일을 받고 압축을 푼다.
open-flash-chart-2-Lug-Wyrm-Charmer 폴더(2011년 11월 기준 최신) 에서 아래를 서버에 복사한다.

  • js, php-ofc-library 폴더
  • open-flash-chart.swf
  • 첨부 파일(line-solid-dot.html, line-solid-dot.php)

line-solid-dot.zip
다운로드


페이지에 접속해 본다. 아래 이미지와 같은 차트이다.

 

기본적으로 data 파일이라는게 필요하다.
예제에서는 line-solid-dot.php 인데, 차트에서 보여줄 데이터들을 배열에 담고 클래스에 넣는다.
그리고 실제로 보여주는 페이지에서 div로 뿌려준다.

보여주는 페이지

<script type="text/javascript" src="js/swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF(
	"open-flash-chart.swf", "my_chart", "550", "200",
	"9.0.0", "expressInstall.swf",
	{"data-file":"line-solid-dot.php"}
);
</script>
</head>
<body>
<div id="my_chart"></div>

 

data 파일

$data = array();

for( $i=0; $i<6.2; $i+=0.2 ) //예제에서 뿌려질 값들은 대충 반복문 돌려서 생성
{
  $data[] = (sin($i) * 1.9) + 4;
}

$title = new title( date("D M d Y") ); //차트 제목

$d = new solid_dot();
$d->size(3)->halo_size(1)->colour('#3D5C56'); //그래프의 점 크기, 점 색깔 설정

$line = new line();
$line->set_default_dot_style($d);
$line->set_values( $data ); //배열을 넣어준다
$line->set_width( 2 );
$line->set_colour( '#3D5C56' ); //그래프 색깔 지정

$y = new y_axis();
$y->set_range( 0, 8, 2 ); //차트의 y축 범위와 표시 단위 지정

한글이 깨지거나, 한글 때문에 swf가 아예 로딩이 안되는 문제가 있다. iconv로 해결하였다.
예) $title = new title( iconv('euc-kr', 'utf-8', '한글') );