top of page

소스 코드 제출

공개·회원 52명

20250503

'''


How to make a Portfolio


0. 주제를 선정하는데, 가정을 고려한다 "ㅇㅇㅇ하면 ㅇㅇㅇ이니 ㅇㅇㅇ할 것 이다"


1. 데이터를 가져온다(csv:txt)


2. 데이터를 로드한다(파이썬)


3. 데이터를 그래프화 시켜본다(각종 도구 및 조합을 이용해)


4. 3번의 동작을 확장시켜서 이야깃거리를 만든다


5. 정리하고 완성한다.


`




'''



import pandas as pd


import cv2


import numpy as np



# CSV 파일 불러오기


df = pd.read_csv("C:\\Users\\SooahCodeLab\\Downloads\\deliver change.csv", encoding='cp949')


print(df.head()) # 데이터 확인



# 이미지 설정


width, height = 600, 400


img = np.zeros((height, width, 3), dtype=np.uint8) # 검은색 배경 생성



# 데이터 정규화


data_x = np.linspace(50, width - 50, len(df)) # X축을 균등 분배


data_y = np.interp(df["값"], (df["값"].min(), df["값"].max()), (height - 50, 50)) # 값 정규화



# 그래프 그리기


for i in range(len(df) - 1):


    cv2.line(img, (int(data_x[i]), int(data_y[i])), (int(data_x[i + 1]), int(data_y[i + 1])), (255, 0, 0), 2)



# 이미지 출력


cv2.imshow("Line Chart", img)


cv2.waitKey(0)


cv2.destroyAllWindows()


# 이미지 설정


img = np.zeros((height, width, 3), dtype=np.uint8) # 검은색 배경 생성


bar_width = int((width - 100) / len(df)) # 바 너비 설정



# 바 차트 그리기


for i, value in enumerate(df["값"]):


    x = 50 + i * bar_width


    y = int(np.interp(value, (df["값"].min(), df["값"].max()), (height - 50, 50))) # 값 정규화


    cv2.rectangle(img, (x, y), (x + bar_width - 5, height - 50), (0, 255, 0), -1) # 바 그리기



# 이미지 출력


cv2.imshow("Bar Chart", img)


cv2.waitKey(0)


cv2.destroyAllWindows()


3회 조회
주소 : 경기도 용인시 광교중앙로 302 블루 스퀘어 602호
연락처 : 031) 216 - 1546 ,     031) 215 - 1546
사업자등록번호 : 465-92-00916
​학원 등록 제 4603호
bottom of page