Link Search Menu Expand Document

Trend


Trend(이하 차트)객체의 속성 및 사용방법에 대하여 설명합니다.

**Lesson6 project sample: **lesson6.zip

차트의 사용법은 크게 3가지가 있습니다.

  1. 정적 데이터를 이용한 차트 객체 표현

  2. 동적 데이터를 이용한 차트 객체 표현

  3. 차트 객체를 Logic객체로 만들어서 사용하기

차트는 기본적으로 실시간 차트입니다. 이를 라인 차트로 변경하려면 몇가지 설정을 해줘야 합니다.

New Project


우선 차트를 그리기 위한 프로젝트를 하나 생성합니다.

프로젝트 생성은프로젝트 만들기 튜토리얼을 참조하시길 바랍니다.

프로젝트 생성이 완료 되었다면 Project Explorer에서 Picture폴더에 trend라는 svg파일을 하나 생성합니다.

그리고 리본메뉴에서 차트(Home->Chart)를 선택하고 에디트화면에 생성합니다.

위 화면이 차트를 처음 생성했을 때 나타나는 화면입니다.

여기까지 하셨으면 차트를 사용하기 위한 기본작업이 완료되었습니다.

차트와 차트의 컴포넌트 속성은 다음과 같습니다.

차트 속성 보기


분류속성 이름속성 설명
기본 속성id차트의 id
 visibility차트 visible속성
 lock편집화면에서 객체가 선택되지 않도록하는 속성
Layoutx차트의 x좌표
 y차트의 y좌표
 width차트 배경의 너비
 height차트 배경의 높이
Style&Classstyle커스텀 스타일 프리셋을 만드는 속성
Trend Propertiestrend-flowreal time차트 활성화 비활성화 옵션
 trend-cyclereal time차트일 때 series에 데이터가 쌓이는 속도(속성 값이 1이면 1초에 한번)
 title-visible차트 제목 표시/비표시 속성
 legend-visible차트 범례 표시/비표시 속성
 xaxis-visible차트 x축 표시/비표시 속성
 yaxis-visible차트 y축 표시/비표시 속성
 graph-visible차트 그래프 표시/비표시 속성
Trend Backgroundfill차트 배경 색상
 fill-opacity차트 배경 투명도
 stroke차트 배경 외곽선
 stroke-opacity차트 배경 투명도
 stroke-width차트 배경 외곽선 굵기
 stroke-linejoin차트 배경 외곽선 꼭지점의 모양
 stroke-dasharray차트 배경 외곽선 스타일
Trend Band Propertiesband-visible그래프에 영역 설정을 하는 옵션 입니다. 최대값, 최소값을 설정할 수 있습니다.
 band-hightlimit최대값을 설정하고 최대값보다 크고 y축 최대값보다 작은 영역을 표시합니다.
 band-high-fill최대값 영역의 색상
 band-high-opacity최대값 영역의 투명도
 band-lowlimit최소값을 설정하고 최소값보다 작고 y축 최소값보다 큰 영역을 표시합니다.
 band-low-fill최소값 영역의 색상
 band-low-opacity최소값 영역의 투명도
Trend Axis Propertiesdurationreal time차트일 때 x축의 표시 범위 (단위 : 초)
 xview-minstatic차트일 때 x축 최대 값
 xview-maxstatic차트일 때 x축 최소 값
 yview-miny축 최대 값
 yview-maxy축 최소 값
 auto-scaleseries의 y데이터 값이 y축 최대값보다 클 경우 자동으로 y축 최대값을 보정하는 옵션

차트 제목 속성 보기


분류속성 이름속성 설명
기본 속성id차트 제목의 id
Style&Classstyle커스텀 프리셋 스타일 설정 옵션
Trend Title Propertiesx차트 제목 x좌표
 y차트 제목 y좌표
 position차트 제목의 위치 프리셋
 fill차트 제목의 배경색
 fill-opacity차트 제목의 배경 투명도
 stroke차트 제목의 배경 외곽선색
 stroke-opacity차트 제목의 배경 외곽선 투명도
 stroke-width차트 제목의 배경 외곽선 굵기
 stroke-linejoin차트 제목의 배경 외곽선 꼭지점 모양
 stroke-dasharray차트 제목의 배경 외곽선 스타일
 title차트 제목의 내용
 font-color글씨 색상
 font-family글씨 모양
 font-size글씨 크기
 font-style글씨 스타일
 font-weight글씨 굵기
 gap-left차트 제목 왼쪽 여백
 gap-right차트 제목 오른쪽 여백
 gap-top차트 제목 위쪽 여백
 gap-bottom차트 제목 아래쪽 여백

차트 범례 속성 보기


분류속성 이름속성 설명
기본 속성id차트 범례의 id
Style&Classstyle차트 범례의 스타일 프리셋 설정 속성
Trend Legend Propertiesposition차트 범례의 위치
 current-value-displayseries별로 현재값을 표시해주는 옵션(real time)
 current-value-type현재값의 표시형식 설정
 current-value-decimal-point현재값의 소수점 표시 자리수 설정
 gap-left차트 범례의 왼쪽 여백
 gap-right차트 범례의 오른쪽 여백
 gap-top차트 범례의 위쪽 여백
 gap-bottom차트 범례의 아래쪽 여백
 gap-row차트 범례의 줄간격
 gap-symbol-text차트 범례의 심볼과 series id 간의 간격
 gap-seriesseries(symbol+series id+ current value)와 series 간의 간격
 gap-text-currentvalueseries id와 current value 간의 간격
 fill범례 배경색
 fill-opacity범례 배경 투명도
 stroke범례 배경 외곽선색
 stroke-opacity범례 배경 외곽선 투명도
 stroke-width범례 배경 외곽선 굵기
 stroke-dasharray범례 배경 외곽선 스타일
 symbol-size심볼의 크기
 font-color글씨 색상
 font-family글씨 모양
 font-size글씨 크기
 font-style글씨 스타일
 font-weight글씨 굵기

차트 축(X. Y) 속성 보기


분류속성 이름속성 설명
기본 속성id차트 축의 id
Style&Classstyle스타일 프리셋 설정 속성
Trend Axis Propertiesposition차트 축의 위치
 log로그 디스플레이 옵션 설정
 mainscale주눈금 표시/비표시 설정
 scale-length주눈금의 길이
 tick눈금과 그래프와의 간격 설정
 stroke선 색상
 stroke-opacity선 투명도
 stroke-width선 굵기
 stroke-dasharray선 스타일
 font-color글씨 색상
 label-format축 라벨의 표시형식 지정
 decimal-point라벨의 소수점 표시 갯수를 지정(label-format에서 number 속성을 선택 했을시 나타난다.)
 font-family글씨 모양
 font-size글씨 크기
 font-style글씨 스타일
 font-weight글씨 굵기

차트 그래프 속성


분류속성 이름속성 설명
기본 속성id차트 그래프의 id
Style&Classstyle스타일 프리셋 설정 속성
Trend Graph Propertiesx그래프의 x좌표
 y그래프의 y좌표
 width그래프의 너비
 height그래프의 높이
 xaxis-countx축 주눈금 갯수
 yaxis-county축 주눈금 갯수
 fill그래프 배경 색상
 fill-opacity그래프 배경색 투명도
 stroke그래프 외곽선의 색상
 stroke-opacity그래프 외곽선의 투명도
 stroke-dasharray그래프 외곽선의 스타일
 stroke-width그래프 외곽선의 굵기
 grid-stroke그래프 그리드선의 색상
 grid-stroke-opacity그래프 그리드선의 투명도
 grid-stroke-dasharray그래프 그리드선의 스타일
 grid-stroke-width그래프 그리드선의 굵기

1. 정적으로 차트 사용하기


정적 차트(라인 차트)로 사용하기 위해서 몇가지 속성을 변경해야 합니다. 우선 위에서 생성한 차트를 선택하고 오른쪽에 속성창을 살펴봅니다.

클릭하시면 원본크기로 볼 수 있습니다.

위의 속성창에서 아래 세가지 속성을 변경해줍니다.

trend-flow = off

xview-max = 300

auto-scale = off

속성을 변경 했다면 아래와 같은 그림이 나옵니다.

이제 마우스로 차트를 선택 합니다. 선택하면 상단에 리본메뉴가 아래와 같이 바뀌어 있는것을 볼 수 있습니다.

리본메뉴에 대해 잠깐 설명 하자면 Add Chart Element는 차트안에 있는 컴포넌트들(범례, 제목, 그래프, x축, y축)의 visible 속성을 뜻합니다.
Drawing 카테고리에 있는 메뉴들은 모두 차트 배경에 관한 속성입니다.
Add Data항목은 차트의 series를 설정 하는 곳으로 series를 추가, 삭제, 속성 변경 등을 할 수 있습니다.

우리는 series를 추가해야 하니 Add Data를 선택 합니다.

Add Data항목을 선택 했을 때 나오는 창입니다.

위 창에서 Add 버튼을 클릭하여 series를 하나 추가합니다. 그리고 추가된 series를 선택하여 오른쪽에 series에 대한 속성을 띄웁니다.

series에 관한 속성은 다음과 같습니다.

series 속성 보기


분류속성 이름속성 설명
기본 속성idseries의 id 값
TrendSeries Variablevariable실시간 차트에서 사용하는 속성, 실시간으로 값이 변하는 변수의 이름을 넣으면 해당 변수의 데이터를 가져오는 인터페이스 속성
TrendSeries Propertiesseries-type정적 차트에서 사용하는 속성, 차트의 종류를 바꾼다.
 strokeseries의 선의 색상
 stroke-opacityseries 선의 투명도
 stroke-widthseries 선의 굵기
 stroke-linecapseries 선의 시작점과 끝점의 모양
 symbol-typeseries의 각 데이터포인트의 모양(원, 삼각형, 사각형)
 symbol-fillseries 심볼의 배경색
 symbol-fill-opacityseries 심볼의 배경 투명도
 symbol-strokeseries 심볼의 외곽선 색
 symbol-stroke-opacityseries 심볼의 외곽선 투명도
 symbol-stroke-widthseries 심볼의 외곽선 굵기
 symbol-stroke-dasharrayseries 심볼의 외곽선 스타일
 symbol-step심볼 드로잉 간격 (기본:1)
 symbol-sizeseries 심볼의 크기
 series-max-sizeseries에 저장되는 데이터의 총 갯수
 dataseries의 정적 데이터를 집어넣는 속성

정적 데이터의 데이터 포맷은 x,y x,y 입니다. 예) 50,300 100,250 150,400 200,150 250,500

위의 예를 series2의 data속성에 넣으면 다음과 같은 화면이 나옵니다.

현재 정적 차트에서 사용할 수 있는 타입은 line(선)과 scatter(점) 차트입니다. 그리고 두가지 타입은 하나의 차트에 나타낼 수 있습니다.

2. 동적 차트 사용하기


동적 차트를 사용하기 위해서 우선 값이 변하는 지역변수를 만들어 보겠습니다.

Project Explorer에서 picture폴더에 파일을 하나 더 생성합니다.

생성된 picture파일 화면에서 배경을 클릭하시고 오른쪽 속성창을 확인합니다. 속성창의 윗 부분에 4개의 아이콘이 있는 것을 확인할 수 있습니다. 이 중에서 V모양의 아이콘을 클릭합니다.

그러면 아래와 같은 창이 나옵니다.

여기서 picture파일의 지역변수를 생성할 수 있습니다. 생성 방법은 다음과 같습니다.

1) New라고 표시된 속성에서 드롭다운 메뉴의 <Add Variable>항목을 선택한다.

2) 변수 생성창에서 변수의 타입(필수), 이름(필수), 시작 값(필수), 설명(선택)을 입력하고 Accept버튼을 클릭합니다.


생성 완료된 화면

변수가 생성 되었다면 변수 값을 속성창의 4개 아이콘중 번개 모양의 아이콘을 선택하여 아래와 같은 창을 띄웁니다.

위의 창에서 Script Type의 type속성을 text/javascript로 변경하고, ontaskview항목을 추가해줍니다.

스크립트 편집 창이 뜨면 다음과 같이 입력합니다.

(생성했던 변수이름) = Math.floor(Math.random() * 500);

입력을 완료하고 Compile 버튼이나 Accept버튼을 클릭하여 스크립트를 등록 하여 줍니다.

여기까지 완료하셨으면 값이 변화 하는지 확인해봅니다.

실시간 변수 값 변경 확인 방법

이제 picture화면에 차트를 새로 생성합니다. 차트가 생성되면 상단 리본메뉴의 Add Data항목을 열어 줍니다.

series1의 속성에서 variable 속성에 위에서 생성한 변수의 이름을 넣어 줍니다. (※주의 : 변수의 이름이 틀리면 값이 들어오지 않거나 원하는 변수의 값이 들어오지 않을 수 있습니다.)

여기까지 완료하면 상단 리본메뉴에서 Home->Run을 클릭하여 스크립트를 실행하여 줍니다. 차트의 그래프가 그려지는지 확인합니다.

그래프가 너무 촘촘히 나온다면 차트의 duration값을 60 또는 120으로 설정하시면 됩니다.

3. 차트 객체를 Logic객체로 만들어서 사용하기


Logic 파일 생성과 Logic객체 이용방법은LOGIC 프로그래밍, HMI라이브러리 인터페이스 방법에서 확인 하시기 바랍니다.

우선 Project Explorer에서 Logic라이브러리 파일을 생성하고, Logic Node를 생성합니다.

시작과정을 모두 완료한 상태

먼저 리본메뉴의 Home->Connection Pin을 생성합니다. Pin의 속성을 다음과 같이 설정합니다.

name = input var-type = double

설정이 완료되면 차트를 생성하여 속성을 변경해 줍니다.

title-visible = hidden legend-visible = hidden xaxis-visible = hidden yaxis-visible = hidden fill-opacity = 0 duration = 30 auto-scale = off

위와 같이 모두 변경 하였다면 차트의 크기를 줄여 줍니다(줄이지 않으셔도 무방합니다.). 대략 밑의 그림 정도로 줄여 주시면 됩니다.

이제 차트를 선택클릭하고 리본메뉴의 Add Data항목을 클릭하여 series속성변경 창을 열고 속성을 다음과같이 변경합니다.

variable = pin의 이름(name속성)

위 과정을 모두 완료 한뒤 라이브러리를 저장해 줍니다.

2번에서 만들었던 picture를 열어줍니다.

여기에 방금 만든 Logic차트를 생성하여 줍니다.

생성이 완료되면 Logic차트에 ID값을 입력하여 줍니다. 입력이 완료 되면 배경을 클릭하고 스크립트를 편집합니다.

위 과정이 모두 완료 되면 리본 메뉴의 Run을 눌러 동작하는지 확인합니다.

팝업 차트 사용하기


팝업 차트를 사용하기 위해서는 두가지 방법이 있습니다.

1. DB에 등록된 변수를 이용하여 팝업 차트로 보기

2. 현재 생성되어 있는 Logic객체의 데이터를 이용하여 팝업차트 이용하기

3. Logic객체의 데이터를 모아서 팝업차트 만들기

주의 할 점은 2번 방법의 경우 Logic객체에 Pin객체나 지역변수가 생성되어 있어야 합니다.

3번 방법은 여러개의 데이터를 한데 묶어서 볼 수 있다는 장점이 있습니다.

1. DB에 등록된 변수를 이용하기

우선 DB에 변수를 등록 해야합니다. 위에서 우리가 만들어놓은 지역변수를 등록하여 팝업차트를 만들어 봅시다.

먼저 리본메뉴의 Data/Communcation탭으로 이동합니다. 그리고 DB Show라는 버튼을 클릭합니다.

DB TABLE 다이얼로그가 나타나면 상단의 DB그림에 G가 써져있는 버튼을 클릭합니다. 그 뒤 나타나는 창의 내용은
“해당 버튼을 누르고 계속 진행하면 기존에 생성되어 있던 데이터들이 모두 지워집니다. 그리고 글로벌 변수와 로직 객체의 변수들을 데이터 베이스에 재생성합니다. 계속하시겠습니까?”라는 내용입니다.

여러분은 처음 생성하는 것일테니 아마도 전부 비어있을 겁니다. 그러므로 걱정하지 마시고 예를 눌러주시면 됩니다.

지금까지 제대로 따라오셨다면 아래와 같은 화면이 나타납니다. DB TABLE창을 닫지 않고, 리본메뉴에서 Run버튼을 눌러 변수의 값을 변화 시켜 줍니다.

DB TABLE창에서 팝업차트에서 보고 싶은 변수를 오른쪽 클릭하거나 ‘Ctrl+클릭’ 또는 ‘Shift+클릭’ 또는 ‘드래그’로 다중선택 하여 오른쪽위의 버튼을 클릭합니다.

생성된 팝업 차트를 확인합니다.

2. 현재 생성되어 있는 Logic객체의 데이터를 이용하여 팝업차트 이용하기

다시 picture 화면으로 돌아가서 Logic차트를 더블 클릭합니다.

아래와 같은 창이 나타나면

팝업 차트로 보고싶은 변수를 마우스 오른클릭하여 팝업 차트를 실행합니다.

3. Logic객체의 데이터를 모아서 팝업차트 만들기

데이터를 한데 모아 사용하기 위해서 테이블 기능을 이용합니다. 리본메뉴의 Presentation->New Table버튼을 클릭합니다.

위와 같은 창이 나오면 Logic차트를 더블 클릭하여 아래와 같은 창을 다시 엽니다.

Table 창과 Logic변수 창이 모두 띄워져 있으면 Logic변수 창의 변수를 마우스 오른쪽 클릭하여 Add Monitor Paramiter를 선택합니다.

그리고 Table 창에 해당 변수가 추가되었는지 확인합니다.
※변수는 하나의 객체에서 여러 개를 추가할 수 있고, 다른 Logic객체에서도 추가할 수 있습니다.

여기서 팝업 차트를 띄우기 위해서 변수의 왼쪽에 체크박스를 체크 해줍니다.
※선택해야할 변수가 여러개라면 모두 체크해줍니다.

이후 Show Trend 버튼을 클릭합니다. (그리고 Run상태가 아닐경우 Run버튼을 클릭해줍니다.)

팝업 차트가 정상적으로 돌아가는지 확인합니다.