2. 애플리케이션으로 (그래프, 서킷 디자인)
이번엔 애플리케이션입니다.
그래프 (차트)
바차트입니다.
위와 같이 자바스크립트로 그래프를 그릴 수 있습니다.
위 바차트는 svg
를 사용했습니다만은, canvas
로도 그릴 수 있습니다.
다음은 도너츠 차트입니다.
일부 몇개를 추려서 개재했습니다만, 전체 소스 코드가 50000줄이 넘습니다.
2009년도에 개발한 도너츠 차트입니다.
서킷 디자인
각 이미지를 드래그해서 왔다갔다해도 잘 따라다닙니다.
이제는 자바스크립트를 처리하는 속도가 그렇게 큰 문제는 아닙니다.
자바스크립트 관점에서 잠깐 살펴보도록 하겠습니다.
아래 부분에 표시된게 서킷인데, 100개가 넘습니다.
빠르죠?
금방 표시되었습니다.
서버에서 가져와서 표시한 것입니다.
이런 관점에서 본다면 이제 속도는 그렇게 크리티컬한 문제가 되진 않습니다.
위의 화면은 이미지가 아닙니다.
저런 구멍들 하나하나 다 처리함에도 불구하고 속도가 느리지 않습니다.
자바스크립트로 위와 같이 원하는 부품들로 조립시현을 해보는 기능을 구현할 수 있습니다.
그런데 현재 위 프로그램은 개발을 잠시 멈춘 상태입니다.
그 이유는 위의 화면을 이미지로 제공하려고 하는데, 이미지로 제공하는 거에서 멈추면 뭐합니까.
그 이미지를 다시 읽었을 때, 위 화면처럼 다시 편집이 되도록 해야되지 않겠어요?
그런데 이를 프로그램으로 개발하는 것은 불가능하고, 머신러닝, 딥러닝으론 가능할 것 같습니다.
하지만 제가 아직 구현을 완료한 것은 아니기 때문에, 됩니다 라고 확실하게 얘기할 순 없지만, 그렇다고 불가능하진 않을 것 같습니다.
그리고 문제는 이러한 ‘선’ 부분들입니다.
다른 부분들은 형태가 있으니 가능성이 높습니다.
선을 추론해서 인식한다는 것 자체가 쉽지만은 않을 것 같습니다.
그리고 위에 처럼 텍스트 기능도 제공합니다.
텍스트트 크기가 다 다릅니다.
그리고 해당 텍스트에 한글, 영어, 중국어 등등이 들어가겠죠?
그리고 font-weight
, font-style
, font-family
등등이 있을 겁니다.
이러한 점들 때문에 어려움이 많이 예상됩니다.
하지만 그렇다고 안된다라고 할 수는 없고 또한 가능성이 있습니다.