똑똑하다더니 차트 하나 제대로 못 그려? [김태권·신호철의 ‘AI 비교 리뷰’]

김태권 만화가·신호철 편집위원 2025. 9. 2. 07:20
음성재생 설정 이동 통신망에서 음성 재생 시 데이터 요금이 발생할 수 있습니다. 글자 수 10,000자 초과 시 일부만 음성으로 제공합니다.
번역beta Translated by kaka i
글자크기 설정 파란원을 좌우로 움직이시면 글자크기가 변경 됩니다.

이 글자크기로 변경됩니다.

(예시) 가장 빠른 뉴스가 있고 다양한 정보, 쌍방향 소통이 숨쉬는 다음뉴스를 만나보세요. 다음뉴스는 국내외 주요이슈와 실시간 속보, 문화생활 및 다양한 분야의 뉴스를 입체적으로 전달하고 있습니다.

챗지피티로 그린 ‘그래프 그리는 인공지능’의 모습.

불운한 챗GPT-5! 그가 빈축을 산 것은 아첨을 못하기 때문만은 아니었다. 프리젠테이션 자리에서 엉터리 그래프를 선보인 일부터 입길에 올랐다. “똑똑한 인공지능이라더니 차트 하나 제대로 못 그리나?”

그래서 이번 리뷰는 인공지능의 차트 그리기 솜씨 자랑이다. 인공지능 여러 모델들을 오랫동안 지켜본 결과 깨달은 점이 있다. AI의 차트 그리기 실력은 시도할 때마다 달라진다는 사실이다. 아침에 잘 먹던 프롬프트가 점심에 갑자기 안 먹히기도 한다(이 글은 2025년 8월 26일 저녁 6시부터 9시 사이에 테스트한 내용으로 썼다).

동전던지기 결과를 차트로 그려줘!

챗GPT, 클로드, 제미나이, 그록 등 4개 AI 모델로 테스트 해봤다. 주제는 동전 던지기 시뮬레이션! 프롬프트는 다음과 같다.

“동전던지기를 100번 수행해서 나오는 결과를 각각 100회, 500회, 1000회 시뮬레이션해 줘. 히스토그램으로 시각화해줘. 가로축은 100번 수행해서 앞면이 0번 나오는 결과부터 100번 나오는 결과야. 세로축은 각 시뮬레이션 중에 몇 번 결과가 나오는지를 보여줘. 이렇게 히스토그램을 그리고 각각에 종형 곡선을 추가해줘.”

유명한 정규분포를 알아보는 시뮬레이션이다. 간단히 설명하면, 다음과 같은 실험이다.

동전을 100번 던진다. 앞면이 몇 번 나오는지 센다. 이걸 한 세트라고 하자. 세트마다 결과는 정확히 50번이 나올 것 같지만 사실은 앞면이 49번이 나올 수도, 51번이 나올 수도 있다. 생뚱맞게 47번이나 53번 앞면이 나올 수도 있다.

각 세트의 결과를 그래프로 그리는 거다. 세트를 많이 반복할수록 대체로 50번 근처에 ‘종 모양’으로 예쁘게 모인다고 알려져 있다. 100세트를 반복하면 거친 종 모양, 500세트를 반복하면 더 예쁜 종 모양, 1000세트를 반복하면 꽤 스무스한 종 모양이 나온다는 거다.

이걸 직접 동전을 던져가며 실험하기는 싫으니까, 인공지능한테 시뮬레이션을 돌려 달라고 시켜놓고, 우리는 그래프만 보겠다는 거다. 편리한 세상이다.

해결해야 할 문제들

요즘 AI는 코딩을 잘한다. 그래서 차트를 그리라고 시키면 차트를 그리는 코드를 짠다. 돌려보면 예쁜 그림이 쑥쑥 나온다. 그런데 골치다. 각각의 AI마다 해결해야 할 문제가 있다.

먼저 챗GPT-5를 돌려보자. 질문을 받자마자 컴퓨터 언어인 파이썬을 이용해 코드를 짠다. 속도감이 일품이다. 파이썬의 matplotlib 라이브러리(도구 모음)는 그래프를 잘 그리기로 소문이 나 있다.

하품 한번 할 사이에 챗GPT가 코드를 완성했다. 실행을 돌려볼까? 예쁜 그래프가 나온다! 그런데 어딘가 이상하다. 그림을 확대해서 보면 제목, x축, y축에 □□□□ 같은 이상한 모양이 보인다. 한글 폰트가 깨져서 나오는 것이다.

챗GPT가 그린 차트. 한글 폰트가 깨져서 나왔다.

올해 봄까지만 해도 아는 사람은 아는 한글 깨짐 해결법이 있었다. ‘한국어 matplotlib’ 파일을 인터넷에서 구해 업로드하고, 이렇게 프롬프트를 넣었다. “업로드한 한국어 matplotlib파일을 이 가상환경에 설치해서 수행해줘.”

그러면 예쁜 한국어 차트가 뽑혀 나왔다. 그런데 어느 때부턴가 챗GPT가 퉁명스럽게 대답했다. “죄송합니다. 올려주신 파일을 설치할 수 없습니다.” 아마 챗GPT 회사에서 막았나 보다. 한국어 사용자들에게는 아쉬운 일이 아닐 수 없다.

한글 깨짐 문제를 어떻게 해결해야 하나?

한편 클로드에 같은 프롬프트를 돌려보자. 클로드는 질문을 받자마자 컴퓨터 언어인 자바스크립트로 코드를 짠다. Chart.js 라이브러리(도구 모음)로 예쁜 차트를 만들어준다. 실행을 눌러볼까? 한글도 완벽히 보이고, 마우스를 올리면 값이 보인다. 그야말로 ‘동전던지기 시뮬레이션 웹페이지’를 만들어줬다.

클로드가 만든 차트. 성공적이지만 웹페이지라서 이미지 저장이 안 된다.

그런데 클로드로 만든 차트도 문제가 있다. 웹페이지라서 저장이 안된다. 오른쪽 버튼을 눌러도 ‘다른 이름으로 그림을 저장’이 나오지 않는다. 이 문제를 어떻게 해결해야 하나?

상황을 요약하면 이렇다. 챗GPT는 파이썬으로 그래프를 그려주는데, 한글이 깨지는 문제가 있다. 클로드는 자바스크립트로 그래프를 그려주는데, 한글은 잘 나오지만 저장이 안 되는 문제가 있다. 속 썩이는 인공지능 친구들이다. 이 문제를 해결하는 방법을 알아보자.

문제를 해결하는 방법

챗GPT와 파이썬의 한글 깨짐 문제를 해결하는 방법이 있다. 챗GPT의 ‘에이전트 모드’를 이용하면 ‘한국어 matplotlib’ 파일을 설치할 수 있다.

먼저 다음 페이지에 들어가, 페이지 아래 koreanize_matplotlib-0.1.1-py3-none-any.whl이라는 이름의 파일을 받는다.

https://pypi.org/project/koreanize-matplotlib/#files

챗GPT의 에이전트 모드를 실행하고, 이 파일을 업로드한 다음 “업로드한 한국어 matplotlib파일을 이 가상환경에 설치해서 수행해줘”라고 추가로 프롬프트를 넣으면, 깨진 한글이 되살아난다. 세종대왕님, 보고 계십니까?

챗GPT에서 한글 깨짐 문제를 해결한 차트.

클로드와 자바스크립트의 ‘저장 안 됨’ 문제를 해결하는 방법도 소개하겠다. 한 가지 방법은 화면을 손으로 캡처하는 것이다. 또 하나의 방법은 다음과 같이 추가로 프롬프트를 넣으면 된다.

“Canvas API와 Blob API를 이용하면 만들어 놓은 그래프를 다운로드 받을 수 있을 텐데, 그렇게 해줄래?”

갑자기 또 어려운 이름이 나왔다! Canvas API는 웹페이지에 그림을 그리는 도구고, Blob API는 파일을 만들고 저장하는 도구다. Canvas가 그린 이미지를 Blob이 저장해 줄 수 있다. 아무튼 이렇게 프롬프트를 넣으면 클로드가 어찌어찌 방법을 찾아준다.

챗GPT와 클로드를 이용해 한글로 차트를 만들고 예쁘게 저장하는 방법까지 알아보았다.

다른 인공지능은? 그리고 결론

우리는 같은 프롬프트를 그록과 제미나이에도 돌려보았다. 그록은 파이썬과 자바스크립트 코드를 모두 제공했다. 여기까지는 훌륭했다. 그런데 파이썬은 역시 한글이 깨져 있었고, 자바스크립트는 저장이 힘들었다. 결국 클로드에게 한 것처럼 “Canvas API와 Blob API”를 이용하라고 입력하고서야 결과를 얻어낼 수 있었다.

그록으로 그린 차트.

제미나이는 변덕쟁이다. 몇 주 전에 시켜보았을 때는 텍스트로 차트를 만들겠다는 도전을 했다. 물론 잘되지 않았다. 이번에 시켰을 때는 파이썬을 이용해 차트를 그렸다. 그런데 시킬 때마다 그래프를 보여주기도, 안 보여주기도 했다. 종잡을 수 없는 친구였다. 이번 테스트 결과만 놓고 보면, 제미나이를 믿고 차트를 그리기는 힘들 것 같다.

적고 보니 기술 이야기가 제법 나오는 리뷰가 되고 말았다. 독자님을 번거롭게 해드려 죄송하다. 한국어 matplotlib 설치건, Canvas API건, 이런저런 귀찮은 내용을 모두 잊고 한 가지만 기억하셔도 된다.

어떤 AI에게든 통할 마법의 방법을 소개한다.

“이러이러한 내용의 그래프를 (Chart.js를 이용해) 자바스크립트로 그려줘”라고 요청한 다음, 실행하고, 바로 화면을 캡처하면 된다.

직접 화면을 캡처하는 것이 가장 직관적이고 편리한 방법이다. 이렇게 하면 한글 문제도 없고, 복잡한 설정도 필요 없다. 물론 독자님이 이 리뷰를 읽을 때에는 AI로 차트 그리는 방법이 또 바뀌어 있을 수도 있겠다.

김태권 만화가·신호철 편집위원 editor@sisain.co.kr

▶읽기근육을 키우는 가장 좋은 습관 [시사IN 구독]
▶좋은 뉴스는 독자가 만듭니다 [시사IN 후원]
©시사IN, 무단전재 및 재배포 금지

Copyright © 시사IN. 무단전재 및 재배포 금지.