핍으로 설치
pip install Spire.XLS
관련된 링크들
묶은 세로 막대형 차트와 누적 세로 막대형 차트는 세로 막대형 차트의 두 가지 변형입니다. 묶은 세로 막대형 차트를 사용하면 다양한 범주의 값을 간단하게 비교할 수 있으며, 누적 세로 막대형 차트는 각 범주의 합계와 개별 구성 요소의 비율을 모두 표시합니다. 이 기사에서는 다음 방법을 배웁니다 Python의 Excel에서 클러스터형 또는 누적 세로 막대형 차트 만들기 Spire.XLS for Python 사용합니다.
Spire.XLS for Python 설치
이 시나리오에는 Spire.XLS for Python 및 Plum-dispatch v1.7.4가 필요합니다. 다음 pip 명령을 통해 VS Code에 쉽게 설치할 수 있습니다.
pip install Spire.XLS
설치 방법을 잘 모르는 경우 다음 튜토리얼을 참조하세요.: VS Code에서 Spire.XLS for Python를 설치하는 방법
Python의 Excel에서 클러스터형 기둥형 차트 만들기
워크시트에 차트를 추가하려면 Worksheet.Chart.Add(ExcelChartType ChartType) 메서드를 사용합니다. ExcelChartType 열거형에는 MS Excel에 미리 정의된 다양한 차트 유형이 포함되어 있습니다. 다음은 Spire.XLS for Python를 사용하여 Excel에 클러스터형 세로 막대형 차트를 추가하는 단계입니다.
- 통합 문서 개체를 만듭니다.
- Workbook.Worksheets[index] 속성을 통해 특정 워크시트를 가져옵니다.
- 지정된 셀에 데이터를 씁니다.
- Worksheet.Chart.Add(ExcelChartType.ColumnClustered) 메서드를 사용하여 클러스터된 열 문자를 워크시트에 추가합니다.
- Chart.DataRange 속성을 통해 차트 데이터를 설정합니다.
- 차트 개체 아래의 속성을 통해 차트의 위치, 제목 및 기타 속성을 설정합니다.
- Workbook.SaveToFile() 메서드를 사용하여 통합 문서를 Excel 파일에 저장합니다.
- Python
from spire.xls import * from spire.xls.common import * # Create a Workbook object workbook = Workbook() # Get the first sheet sheet = workbook.Worksheets[0] # Set chart data sheet.Range["A1"].Value = "Product" sheet.Range["A2"].Value = "Diet Coke" sheet.Range["A3"].Value = "Mountain Dew" sheet.Range["A4"].Value = "Diet Pesi" sheet.Range["A5"].Value = "Cherry Coke" sheet.Range["B1"].Value = "Store A" sheet.Range["B2"].NumberValue = 35000 sheet.Range["B3"].NumberValue = 46000 sheet.Range["B4"].NumberValue = 28000 sheet.Range["B5"].NumberValue = 51000 sheet.Range["C1"].Value = "Store B" sheet.Range["C2"].NumberValue = 41000 sheet.Range["C3"].NumberValue = 32000 sheet.Range["C4"].NumberValue = 38000 sheet.Range["C5"].NumberValue = 40000 # Set cell style sheet.Range["A1:C1"].RowHeight = 15 sheet.Range["A1:C1"].Style.Color = Color.get_Black() sheet.Range["A1:C1"].Style.Font.Color = Color.get_White() sheet.Range["A1:C1"].Style.VerticalAlignment = VerticalAlignType.Center sheet.Range["A1:C1"].Style.HorizontalAlignment = HorizontalAlignType.Center sheet.AutoFitColumn(1) # Add a chart to the sheet chart = sheet.Charts.Add(ExcelChartType.ColumnClustered) # Set data range of chart chart.DataRange = sheet.Range["A1:C5"] chart.SeriesDataFromRange = False # Set position of the chart chart.LeftColumn = 5 chart.TopRow = 1 chart.RightColumn = 14 chart.BottomRow = 21 # Set chart title chart.ChartTitle = "Store Wise Soda Soft Drink Sales" chart.ChartTitleArea.IsBold = True chart.ChartTitleArea.Size = 12 # Set axis title chart.PrimaryCategoryAxis.Title = "Product" chart.PrimaryCategoryAxis.Font.IsBold = True chart.PrimaryCategoryAxis.TitleArea.IsBold = True chart.PrimaryValueAxis.Title = "Sales" chart.PrimaryValueAxis.HasMajorGridLines = False chart.PrimaryValueAxis.TitleArea.IsBold = True chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90 # Set series color, overlap, gap width and data labels series = chart.Series for i in range(len(series)): cs = series[i] cs.Format.Options.IsVaryColor = True cs.Format.Options.Overlap = -50 cs.Format.Options.GapWidth = 350 cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True # Set legend position chart.Legend.Position = LegendPositionType.Top # Save the document workbook.SaveToFile("ClusteredColumnChart.xlsx", ExcelVersion.Version2016)
Python의 Excel에서 누적 세로 막대형 차트 만들기
누적 세로 막대형 차트를 만드는 과정은 묶은 세로 막대형 차트를 만드는 과정과 비슷합니다. 유일한 차이점은 Excel 차트 유형을 ColumnClustered에서 ColumnStacked로 변경해야 한다는 것입니다.
- 통합 문서 개체를 만듭니다.
- Workbook.Worksheets[index] 속성을 통해 특정 워크시트를 가져옵니다.
- 지정된 셀에 데이터를 씁니다.
- Worksheet.Chart.Add(ExcelChartType.ColumnStacked) 메서드를 사용하여 클러스터된 열 문자를 워크시트에 추가합니다.
- Chart.DataRange 속성을 통해 차트 데이터를 설정합니다.
- 차트 개체 아래의 속성을 통해 차트의 위치, 제목 및 기타 속성을 설정합니다.
- Workbook.SaveToFile() 메서드를 사용하여 통합 문서를 Excel 파일에 저장합니다.
- Python
from spire.xls import * from spire.xls.common import * # Create a Workbook object workbook = Workbook() # Get the first sheet sheet = workbook.Worksheets[0] # Set chart data sheet.Range["A1"].Value = "Product" sheet.Range["A2"].Value = "Diet Coke" sheet.Range["A3"].Value = "Mountain Dew" sheet.Range["A4"].Value = "Diet Pesi" sheet.Range["A5"].Value = "Cherry Coke" sheet.Range["B1"].Value = "Store A" sheet.Range["B2"].NumberValue = 35000 sheet.Range["B3"].NumberValue = 46000 sheet.Range["B4"].NumberValue = 28000 sheet.Range["B5"].NumberValue = 51000 sheet.Range["C1"].Value = "Store B" sheet.Range["C2"].NumberValue = 41000 sheet.Range["C3"].NumberValue = 32000 sheet.Range["C4"].NumberValue = 38000 sheet.Range["C5"].NumberValue = 40000 # Set cell style sheet.Range["A1:C1"].RowHeight = 15 sheet.Range["A1:C1"].Style.Color = Color.get_Black() sheet.Range["A1:C1"].Style.Font.Color = Color.get_White() sheet.Range["A1:C1"].Style.VerticalAlignment = VerticalAlignType.Center sheet.Range["A1:C1"].Style.HorizontalAlignment = HorizontalAlignType.Center sheet.AutoFitColumn(1) # Add a chart to the sheet chart = sheet.Charts.Add(ExcelChartType.ColumnStacked) # Set data range of chart chart.DataRange = sheet.Range["A1:C5"] chart.SeriesDataFromRange = False # Set position of the chart chart.LeftColumn = 5 chart.TopRow = 1 chart.RightColumn = 14 chart.BottomRow = 21 # Set chart title chart.ChartTitle = "Store Wise Soda Soft Drink Sales" chart.ChartTitleArea.IsBold = True chart.ChartTitleArea.Size = 12 # Set axis title chart.PrimaryCategoryAxis.Title = "Product" chart.PrimaryCategoryAxis.Font.IsBold = True chart.PrimaryCategoryAxis.TitleArea.IsBold = True chart.PrimaryValueAxis.Title = "Sales" chart.PrimaryValueAxis.HasMajorGridLines = False chart.PrimaryValueAxis.TitleArea.IsBold = True chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90 # Set series color, gap width and data labels series = chart.Series for i in range(len(series)): cs = series[i] cs.Format.Options.IsVaryColor = True cs.Format.Options.GapWidth = 270 cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True cs.DataPoints.DefaultDataPoint.DataLabels.Position = DataLabelPositionType.Inside # Set legend position chart.Legend.Position = LegendPositionType.Top # Save the document workbook.SaveToFile("StackedColumnChart.xlsx", ExcelVersion.Version2016)
임시 라이센스 신청
생성된 문서에서 평가 메시지를 제거하고 싶거나, 기능 제한을 없애고 싶다면 30일 평가판 라이센스 요청 자신을 위해.