Q&A

  • TChart의 Series.AddXY함수를 어떻게 써야될지...ㅡ.ㅡ;;
하나의 TChart에 FastLine Series를 여러개 놓고 쓰고있습니다.

Series.Add()함수로 쓰다보니 X축을 날짜로 둔 관계로

나중에 추가된 날짜가 좌표축부터 다시 입력되는 상황이 발생하더군요.

델파이 도움말을 보니 AddXY()가 해결방법인거 같긴한데....

아무리 해봐도 입력값이 챠트에 나타나질 않습니다. 뭐가 잘못된건지...ㅡ.ㅡ;;

<!--CodeS-->
procedure Tform_Chart.Button1Click(Sender: TObject);
var
  i : integer;
  tmpdate : TDate;
begin
  Series1.Clear;
  Series2.Clear;
  Series3.Clear;
  Series4.Clear;
  tmpdate := date;
  for i := 1 to 2 do
  begin
    tmpdate := incday(tmpdate,i);
    Series1.addXY(tmpdate,random(100), FormatDateTime('mm-dd',tmpdate), clTeeColor);
    Series2.addXY(tmpdate,random(100), FormatDateTime('mm-dd',tmpdate), clTeeColor);
    Series3.addXY(tmpdate,random(100), FormatDateTime('mm-dd',tmpdate), clTeeColor);
    Series4.addXY(tmpdate,random(100), FormatDateTime('mm-dd',tmpdate), clTeeColor);
  end;
end;
<!--CodeE-->


샘플로 작성한 코드인데요. 값이 챠트에 반영이 되질 않습니다.
add()로 적당히 넣으면 잘 돌아가구요....
X좌표는 날짜로 지정되어 있구요.

어디가 잘못되서 아예 챠트에 나타나질 않는것인지...ㅡ.ㅡ;;

아주 단순한 것이라도 짐작이 되시면 도움 부탁드리겠습니다.
2  COMMENTS
  • Profile
    이중철 2005.05.31 23:44
    이미 X축에 날짜로 셋팅하였다는 가정하에 출발하겠습니다.
    (시리즈 속성에 보면 있습니다.)
    물론 X축의 날짜형식(YYYY-MM-DD HH:NN:SS 또는 NN:SS등)도 설정하였다는 가정하입니다.    

    시리즈 Add는 순차적으로 X가 1씩 증가하는 형식이 옳지 않죠

    어 이상하네 이런 님이 쓰신것은 이상없고요

    단지 위의 설정을 하지 않았네요

    위의 가정한다는 부문이 다 안된듯 하네요

    그럼 이만.. 내용을 잘 봐야 하는데 ^^

  • Profile
    피터팬 2005.06.02 07:28
    답변 감사드립니다.
    이유를 찾았는데요. 바로 최대값과 최소값의 설정이었습니다.ㅡ.ㅡ;;
    디폴트상태의 TChart 최대값이 1900년 12월31일인가 그렇더군요.
    그러니 현재값이 들어갈리가 없었던 거죠....
    TChart의 X축의 최대값 설정하는것으로 해결했습니다.
    series속성에 있는게 아니라 TChart 속성에 있어서 못봤었나봅니다.

    성의있게 답변해주신점 다시한번 감사드립니다.