하트 그래프 그리기 | 심장형 곡선·카디오이드 방정식

🗓 2026.08.27 업데이트 작성 김흑우 읽는 시간 약 7분
🏆
공정하게 씁니다 — 거래소·서비스로부터 원고료나 협찬을 받지 않습니다. 추천과 순위는 수수료·유동성·한국어 지원처럼 공개된 선정 기준으로만 정합니다. 본문의 가입 링크(추천인 코드)로 가입하면 독자에게는 수수료 할인이 적용되고, 사이트에는 수수료 일부가 돌아오지만 선정에는 영향을 주지 않습니다. 정보 제공용이며 투자 권유가 아닙니다.
🔍 확인 방법 — 마지막 확인 2026.08.27 — 이후 거래소·서비스가 화면이나 요율을 바꿨을 수 있습니다.

직답 — 흔히 ‘하트 그래프’라고 부르는 곡선은 하나가 아닙니다. (x²+y²−1)³−x²y³=0은 x와 y의 관계로 정의한 6차 대수곡선이고, r=a(1−sinθ)는 극좌표로 정의한 카디오이드입니다. 두 식은 모두 하트처럼 보이지만 같은 곡선이 아닙니다. 아래 탭에서 모양·좌표·그리는 방식을 따로 확인하세요.

MATHNET · DRAW AND COMPARE

같아 보이는 두 하트를 식부터 구분하세요

SVG 위에서 좌표를 짚고, 표본 밀도·카디오이드 크기·각도를 바꿔 보세요. 계산과 그리기는 이 브라우저 안에서만 실행됩니다.

식의 값이 0이 되는 경계를 격자에서 찾아 선분으로 잇습니다. 표본 밀도를 높이면 윤곽이 매끄러워지지만 방정식 자체는 바뀌지 않습니다.

대수적 하트 그래프 좌표축 위에 대수 방정식의 값이 0인 하트 모양 윤곽을 표시합니다. x y
현재 수식(x²+y²−1)³−x²y³=0
선택 좌표x=0, y=−1 · F(x,y)=0

160×160 격자의 25,600개 셀에서 0등고선을 근사했습니다.

그래프 위를 클릭하거나 키보드 방향키로 좌표를 옮길 수 있습니다.

하트 모양을 만드는 두 방정식

대수적 하트 곡선F(x,y)=(x²+y²−1)³−x²y³F(x,y)=0

x와 y를 직접 연결한 6차 암시적 대수방정식입니다. (0,1), (0,−1), (1,0), (−1,0)은 식을 정확히 만족합니다.

카디오이드r=a(1−sinθ), a>0x=r cosθ, y=r sinθ넓이=3πa²/2 · 길이=8a · 최대 r=2a

각도 θ가 정해지면 반지름 r이 정해지는 극방정식입니다. θ=π/2에서 r=0이므로 원점에 뾰족점이 생깁니다. ±sin·±cos를 고르면 곡선의 방향만 회전·반전됩니다.

이름만 보고 같은 식으로 취급하면 안 됩니다. cardioid는 어원상 ‘심장 모양’이지만, 인터넷에서 ‘하트 방정식’으로 많이 쓰이는 6차 대수곡선과 점의 집합이 일치하지 않습니다.

대수적 하트와 카디오이드는 무엇이 다를까?

비교대수적 하트카디오이드 r=a(1−sinθ)
정의 방식직교좌표의 암시적 식 F(x,y)=0극좌표의 함수 r(θ)
식의 종류6차 대수곡선삼각함수를 이용한 극곡선
대표 점(0,±1), (±1,0)θ=0: (a,0), θ=π: (−a,0), θ=3π/2: (0,−2a)
뾰족한 부분위쪽의 갈라진 골과 아래쪽 끝이 함께 드러남θ=π/2에서 r=0이 되어 원점에 한 뾰족점
크기 조절이 페이지에서는 계수를 고정a가 모든 좌표를 같은 비율로 확대·축소
넓이·길이카디오이드 공식을 적용할 수 없음넓이 3πa²/2, 곡선 길이 8a, 최대 반지름 2a
그리는 방법격자에서 F의 부호가 바뀌는 0등고선을 근사θ를 일정 간격으로 표본화해 매개점들을 연결

그래프는 어떻게 그려질까?

암시적 방정식은 0등고선을 찾는다

대수적 하트에서는 x를 하나 정해 y를 단일 함수로 계산하기 어렵습니다. 그래서 화면 영역을 작은 격자로 나누고 각 꼭짓점에서 F(x,y)를 계산한 뒤, 부호가 바뀌는 변 사이를 선형 보간합니다. 이 방식은 marching squares의 기본 아이디어이며 결과는 원래 곡선의 수치 근사입니다.

극방정식은 θ 순서대로 점을 만든다

카디오이드에서는 θ를 0부터 2π까지 늘리면서 r=a(1−sinθ)를 계산합니다. 각 극좌표를 x=r cosθ, y=r sinθ로 변환하고 순서대로 연결하면 닫힌 곡선이 됩니다.

방향을 바꾸면 r=a(1+sinθ), r=a(1−cosθ), r=a(1+cosθ)를 사용합니다. 네 식은 회전·반전된 같은 크기의 카디오이드이므로 넓이 3πa²/2, 길이 8a, 최대 반지름 2a는 그대로입니다.

정밀도는 식의 정확도가 아니라 화면 표본 수다

80에서 240까지의 표본 밀도는 SVG 경로의 매끄러움을 조절합니다. 최대 설정에서 대수적 하트는 58,081개 격자 꼭짓점과 57,600개 셀을 검사하도록 제한했습니다. 더 촘촘한 연구용 등고선이나 오차 보증이 필요하면 전용 수치해석 도구를 사용해야 합니다.

식에 좌표를 직접 대입해 검산하기

곡선입력계산확인
대수적 하트(x,y)=(1,0)(1²+0²−1)³−1²×0³=0곡선 위의 점
대수적 하트(x,y)=(0,−1)(0²+(−1)²−1)³−0²×(−1)³=0곡선 위의 점
카디오이드θ=0r=a, x=a, y=0오른쪽 축과 만남
카디오이드θ=π/2r=0, x=0, y=0원점의 뾰족점
카디오이드θ=3π/2r=2a, x=0, y=−2a아래쪽 끝

수치 그래프의 오차와 성능 한계

암시적 곡선은 선분으로 근사된다

격자 변에서 F의 값이 선형으로 변한다고 보고 교점을 추정하므로 실제 곡선과 작은 차이가 생깁니다. 밀도를 높이면 보통 차이가 줄지만 수학적 오차 상한을 증명하는 기능은 아닙니다.

화면 좌표는 소수 넷째 자리로 반올림한다

좌표 복사 값은 읽기 편하게 반올림됩니다. 대입 검산이나 후속 계산에는 원래 식을 사용하고, 중요한 수치 작업에서는 필요한 정밀도를 별도로 정하세요.

브라우저 보호를 위해 표본 수를 제한한다

표본 밀도는 최소 80, 최대 240입니다. 슬라이더 입력은 다음 화면 그리기 시점에 한 번만 반영해 연속 드래그 중 중복 계산을 줄입니다. 이 도구는 교육용 2차원 미리보기이며 고해상도 출력기나 기호 계산기는 아닙니다.

하트 그래프 자주 묻는 질문

하트 그래프 방정식은 하나뿐인가요?
아닙니다. 하트처럼 보이는 대수곡선, 극곡선, 매개곡선이 여러 개 있습니다. 이 페이지는 대표적인 6차 대수곡선과 카디오이드를 비교합니다.
(x²+y²−1)³−x²y³=0은 함수인가요?
y=f(x) 꼴의 단일 함수라기보다 x와 y의 관계를 정한 암시적 방정식입니다. 같은 x에 여러 y가 대응할 수 있어 0등고선으로 그립니다.
카디오이드도 하트 곡선인가요?
이름은 ‘심장 모양’에서 왔고 시각적으로 하트와 닮았지만, 여기의 6차 대수적 하트와는 다른 곡선입니다.
r=a(1−sinθ)에서 a는 무엇을 바꾸나요?
a가 커지면 모든 좌표가 같은 비율로 커집니다. a가 양수인 동안 기본 모양과 원점의 뾰족점은 유지됩니다.
카디오이드의 넓이와 길이는 얼마인가요?
r=a(1±sinθ) 또는 r=a(1±cosθ)의 넓이는 3πa²/2, 전체 곡선 길이는 8a, 최대 반지름은 2a입니다. 이 공식은 옆 탭의 6차 대수적 하트에는 적용되지 않습니다.
표본 밀도를 높이면 식도 더 정확해지나요?
식은 처음부터 같습니다. 밀도를 높이면 그 식을 화면의 선분으로 표현하는 근사가 더 촘촘해집니다.
그래프의 좌표를 어떻게 복사하나요?
그래프를 클릭하거나 키보드 방향키로 표시점을 옮긴 뒤 ‘좌표 복사’를 누르세요. 카디오이드 탭에서는 θ 슬라이더로 곡선 위 좌표를 고를 수도 있습니다.
출처·검산·수정 이력

공식·렌더링 검증일: 2026-08-27 · 대수적 하트 기준점 F(±1,0)=F(0,±1)=0 · 카디오이드 기준점 θ=0, π/2, π, 3π/2 검산 · 버전 1.0.0