지난 포스팅에서 기능2를 구현하였다.
이어서 기능3을 구현하겠다.
곰곰이 생각해 봤는데 DB의 데이터를 수정하는 기능4번은 사용자에게 너무 큰 권한을 주는것 같다는 생각을 하였다. 데이터 무결성도 쉽게 깨질수 있어 데이터 수정기능인 4번은 구현하지 않기로 결정.
기능4번 대신에 새롭게 추가할 다음과같은 유용한 기능을 생각해보았다.
- 데이터 시각화 기능
- 조회 데이터 Export기능
- 매출예측 Ai 기능
을 추가하기로 하였다.
이번포스팅에서는 기능3번과 데이터 시각화 기능을 구현하였다.
시각화를 위해 pandas와 matplotlib 를 임포트한다.
데이터를 시각화 하려면 DataFrame 형태로 바꿔야한다. 그리고 DataFrame 컬럼명을 지정해 줘야하는데
하나의 버튼으로 컬럼명에따라 모든 쿼리의 시각화 기능을 수행할 수 있도록 Cursor 객체의 컬럼명을 알아야한다.
아래와 같은 방법으로 컬럼명을 얻을수있다.
데이터베이스 결과를 li변수로 컬럼명을 colnames변수로 선언한다.
클래스 내에서 변수를 참조한다면 self 유의해야한다.
시각화 기능을 간단히 테스트해보는 코드이다.
실행결과는 무반응.
어디서 오류인지 알아내기위해 print출력문을 코드 사이사이에 배치
컬럼명 일치여부를 확인하는 if문에서 오류가 발생함을 확인
컬럼명이 담겨있어야 되는 colnames가 비어있다.
self를 뺴먹어서 참조에 실패했던 것이다.
colnames의 컬럼명과 대소문자를 구분하여 정확히 일치하도록 수정한다
그리고 테스트실행
부적절한 Data value라는 내용이다.
DataFrame의 Data변수를 조회
이상이 없음을 확인
오류가 발생한 부분을 찾기위해 Print문을 사이사이 배치
10번까지 모두 정상출력
이후 자세히 확인해보니
단순 오타가 원인이었다.
그리고
시각화에는 성공하였으나 표기된 그래프가 잘못되었다.
파란색 0번 카테고리가 가장 많은것은
부분 집계를 쿼리에 따로 포함시켜 이를 하나의 카테고리로 분류해 잘못된 표기가 발생
기능2번 쿼리를 시각화용에 맞게 수정하였다.
시각화가 올바르게 되었다.
기능3번은 따로 구현 과정을 담지못했지만 기능3번도 구현 완료하였다.
아래는 기능3번과 시각화기능 실행 영상이다
이로서 기능3번,시각화 기능 구현을 마친다.
'Projects' 카테고리의 다른 글
[매출 관리 프로그램 제작] - 기능구현(2) (0) | 2024.08.20 |
---|---|
[매출 관리 프로그램 제작] - 기능구현(1) (0) | 2024.08.18 |
[매출 관리 프로그램 제작] - 쿼리 제작 (0) | 2024.08.16 |
[매출 관리 프로그램 제작] - Ui 구성단계 (0) | 2024.08.14 |
[매출 관리 프로그램 제작] - 환경 세팅 (0) | 2024.08.13 |