it-source

파이썬/판다를 사용하여 엑셀에서 색상 그라데이션을 만드는 가장 쉬운 방법은 무엇입니까?

criticalcode 2023. 6. 10. 09:26
반응형

파이썬/판다를 사용하여 엑셀에서 색상 그라데이션을 만드는 가장 쉬운 방법은 무엇입니까?

그래서 저는 판다의 엑셀라이터를 사용하여 엑셀파일로 출력하는 자료를 가지고 있습니다.전체 데이터가 Excel 파일로 출력된 후 Python을 사용하여 프로그래밍 방식으로 조건부 형식을 적용하는 가장 쉬운 방법은 무엇입니까?

Excel 시트에서 채워진 셀을 모두 선택(Excel에서)하고 "조건 포맷" > "색상 눈금"을 클릭하는 동등한(파이썬을 통해) 작업을 수행할 수 있기를 원합니다.최종 결과는 값을 기반으로 한 색상의 그라데이션("열 지도")입니다.

데이터를 생성하기 위해 수행하는 작업은 다음과 같습니다.

writer = ExcelWriter('Data' + today +'.xls')
... processing data ... 
df.to_excel(writer, sheet_name = 'Models', startrow = start_row, index=False)

데이터가 작성된 후에 python을 사용하여 조건부 포맷을 적용할 수 있는 방법이 필요합니다.쉽게 설명하기 위해 색상은 파란색의 어두운 색조(>0) 값이 양수(>0)일 수록 빨간색의 어두운 색조로 만들고 값이 음수(<0)일 수록 셀은 흰색으로 만듭니다.

(엑셀 파일을 만든 후 수정할 수 있기를 바라며) xlsxwriter를 조사해 보았지만, 문서에는 "[XLSXwriter]는 기존 Excel XLSX 파일을 읽거나 수정할 수 없습니다."라고 나와 있습니다.

해결책을 찾으시거나 올바른 방향을 제시해 주실 수 있는지 알려주세요.

다음은 Pandas에서 만든 XlsxWriter Excel 파일에 조건부 형식을 적용하는 방법의 예입니다.

import pandas as pd

# Some sample data to plot.
list_data = [30, 40, 50, 40, 20, 10, 5]

# Create a Pandas dataframe from the data.
df = pd.DataFrame(list_data)

# Create a Pandas Excel writer using XlsxWriter as the engine.
excel_file = 'testfile.xlsx'
sheet_name = 'Sheet1'

writer = pd.ExcelWriter(excel_file, engine='xlsxwriter')
df.to_excel(writer, sheet_name=sheet_name)

# Access the XlsxWriter workbook and worksheet objects from the dataframe.
# This is equivalent to the following using XlsxWriter on its own:
#
#    workbook = xlsxwriter.Workbook('filename.xlsx')
#    worksheet = workbook.add_worksheet()
#
workbook = writer.book
worksheet = writer.sheets[sheet_name]

# Apply a conditional format to the cell range.
worksheet.conditional_format('B2:B8', {'type': '3_color_scale'})

# Close the Pandas Excel writer and output the Excel file.
writer.save()

출력은 다음과 같습니다.

여기에 이미지 설명 입력

색상 또는 기타 속성을 변경하는 방법은 조건부 서식의 XlsxWriter 문서를 참조하십시오.

Python PandasXlsxWriter 관련 작업을 참조하십시오.

언급URL : https://stackoverflow.com/questions/26265403/easiest-way-to-create-a-color-gradient-on-excel-using-python-pandas

반응형