NOTE 자주 하는 실수 - 데이터 개수 맞추기
plt.bar()에서도 x축 데이터의 개수와 y축 데이터의 개수가 같지 않으면 오류가 발생합니다.
sales = [1, 5, 7, 3, 7]
plt.rc('font', family='Malgun Gothic')
plt.title('월별 판매 실적')
plt.bar(range(6), sales, color='b')
plt.show()
실행결과
----> 4 plt.bar(range(6), sales, color='b')
ValueError: shape mismatch: objects cannot be broadcast to a single shape
오류 내용이 길어도 화살표가 가리키는 부분과 마지막 내용만 봐도 오류를 이해할 수 있으니 두려워하지 마세요. 화살표가 plt.bar(range(6), sales, color='b')를 가리키죠? 이 부분에서 오류가 발생했음을 알 수 있습니다. 마지막 줄을 보면 ‘형태 불일치: 대상들이 하나의 형태로 뿌려질 수 없다’고 나옵니다. 복잡해 보이지만, 이는 x축 데이터와 y축 데이터의 형태가 일치하지 않아서 오류가 발생한다는 뜻입니다. range(6)은 0부터 5까지를 의미하므로 값이 총 6개지만, sales에는 5개만 있습니다. 그래프를 그릴 때는 x축 데이터와 y축 데이터의 개수가 같아야 한다는 점을 꼭 기억해 두세요.