Formattazione della tabella pivot
Aspetto della tabella pivot
Come creare una tabella pivot spiega come creare una semplice tabella pivot. Questo articolo descrive come personalizzare l’aspetto di una tabella pivot impostando diverse proprietà:
- Opzioni di formato tabella pivot
- Opzioni di formato dei campi pivot
- Opzioni di formato del campo dati
Come impostare le opzioni di formato tabella pivot
La classe PivotTable controlla complessivamente la tabella pivot e può essere formattata in vari modi.
Come impostare il tipo di autoformato
Microsoft Excel offre diverse impostazioni predefinite per i report. Anche Aspose.Cells per Python via .NET supporta queste opzioni di formattazione. Per accedervi:
- Imposta PivotTable.is_auto_format su vero.
- Assegna un’opzione di formattazione dall’enumerazione PivotTableAutoFormatType.
from aspose.cells import Workbook | |
from aspose.cells.pivot import PivotTableAutoFormatType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Load a template file | |
workbook = Workbook(dataDir + "Book1.xls") | |
pivotindex = 0 | |
# Get the first worksheet | |
worksheet = workbook.worksheets[0] | |
# Accessing the PivotTable | |
pivotTable = worksheet.pivot_tables[pivotindex] | |
# Setting the PivotTable report is automatically formatted | |
pivotTable.is_auto_format = True | |
# Setting the PivotTable atuoformat type. | |
pivotTable.auto_format_type = PivotTableAutoFormatType.REPORT5 | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Come impostare le opzioni di formattazione
Il codice di esempio qui sotto mostra come formattare la tabella pivot per mostrare i totali generali per righe e colonne, e come impostare l’ordine dei campi del report. Mostra inoltre come impostare una stringa personalizzata per i valori nulli.
from aspose.cells import PrintOrderType, Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Load a template file | |
workbook = Workbook(dataDir + "Book1.xls") | |
# Get the first worksheet | |
worksheet = workbook.worksheets[0] | |
pivotindex = 0 | |
# Accessing the PivotTable | |
pivotTable = worksheet.pivot_tables[pivotindex] | |
# Setting the PivotTable report shows grand totals for rows. | |
pivotTable.row_grand = True | |
# Setting the PivotTable report shows grand totals for columns. | |
pivotTable.column_grand = True | |
# Setting the PivotTable report displays a custom string in cells that contain null values. | |
pivotTable.display_null_string = True | |
pivotTable.null_string = "null" | |
# Setting the PivotTable report's layout | |
pivotTable.page_field_order = PrintOrderType.DOWN_THEN_OVER | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Formattazione Aspetto e Sensazione Manualmente
Per formattare manualmente l’aspetto del report della tabella pivot, anziché utilizzare formati di report predefiniti, utilizzare i metodi PivotTable.format_all(style) e PivotTable.format(row, column, style). Creare un oggetto stile per la formattazione desiderata, ad esempio:
from aspose.cells import BackgroundType, Workbook | |
from aspose.cells.pivot import PivotTableStyleType | |
from aspose.pydrawing import Color | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Load a template file | |
workbook = Workbook(dataDir + "Book1.xls") | |
# Get the first worksheet | |
worksheet = workbook.worksheets[0] | |
pivot = workbook.worksheets[0].pivot_tables[0] | |
pivot.pivot_table_style_type = PivotTableStyleType.PIVOT_TABLE_STYLE_DARK1 | |
style = workbook.create_style() | |
style.font.name = "Arial Black" | |
style.foreground_color = Color.yellow | |
style.pattern = BackgroundType.SOLID | |
pivot.format_all(style) | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Come impostare le opzioni di formato campo pivot
La classe PivotField rappresenta un campo in una tabella pivot e può essere formattata in vari modi. Il codice di esempio qui sotto mostra come:
- Accedere ai campi di riga.
- Impostare i subtotali.
- Impostazione dell’ordinamento automatico.
- Impostazione dell’autovisualizzazione.
Come impostare il formato dei campi riga/colonna/pagina
from aspose.cells import Workbook | |
from aspose.cells.pivot import PivotFieldSubtotalType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Load a template file | |
workbook = Workbook(dataDir + "Book1.xls") | |
# Get the first worksheet | |
worksheet = workbook.worksheets[0] | |
pivotindex = 0 | |
# Accessing the PivotTable | |
pivotTable = worksheet.pivot_tables[pivotindex] | |
# Setting the PivotTable report shows grand totals for rows. | |
pivotTable.row_grand = True | |
# Accessing the row fields. | |
pivotFields = pivotTable.row_fields | |
# Accessing the first row field in the row fields. | |
pivotField = pivotFields[0] | |
# Setting Subtotals. | |
pivotField.set_subtotals(PivotFieldSubtotalType.SUM, True) | |
pivotField.set_subtotals(PivotFieldSubtotalType.COUNT, True) | |
# Setting autosort options. | |
# Setting the field auto sort. | |
pivotField.is_auto_sort = True | |
# Setting the field auto sort ascend. | |
pivotField.is_ascend_sort = True | |
# Setting the field auto sort using the field itself. | |
pivotField.auto_sort_field = -5 | |
# Setting autoShow options. | |
# Setting the field auto show. | |
pivotField.is_auto_show = True | |
# Setting the field auto show ascend. | |
pivotField.is_ascend_show = False | |
# Setting the auto show using field(data field). | |
pivotField.auto_show_field = 0 | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Come impostare il formato dei campi dati
Il campione di codice sottostante mostra come impostare i formati di visualizzazione e il formato numerico per i campi dati.
from aspose.cells import Workbook | |
from aspose.cells.pivot import PivotFieldDataDisplayFormat, PivotItemPosition | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Load a template file | |
workbook = Workbook(dataDir + "Book1.xls") | |
# Get the first worksheet | |
worksheet = workbook.worksheets[0] | |
pivotindex = 0 | |
# Accessing the PivotTable | |
pivotTable = worksheet.pivot_tables[pivotindex] | |
# Accessing the data fields. | |
pivotFields = pivotTable.data_fields | |
# Accessing the first data field in the data fields. | |
pivotField = pivotFields[0] | |
# Setting data display format | |
pivotField.data_display_format = PivotFieldDataDisplayFormat.PERCENTAGE_OF | |
# Setting the base field. | |
pivotField.base_field_index = 1 | |
# Setting the base item. | |
pivotField.base_item_position = PivotItemPosition.NEXT | |
# Setting number format | |
pivotField.number = 10 | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Come eliminare i campi di un Pivot
Il PivotFieldCollection ha un metodo chiamato clear() che ti consente di eliminare i campi di un Pivot. Usalo quando vuoi eliminare tutti i campi di un Pivot nelle aree, ad esempio, pagina, colonna, riga o dati. Il campione di codice sottostante mostra come eliminare tutti i campi di un Pivot in un’area dati.
from aspose.cells import Workbook | |
from aspose.cells.pivot import PivotFieldType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Load a template file | |
workbook = Workbook(dataDir + "Book1.xls") | |
# Get the first worksheet | |
sheet = workbook.worksheets[0] | |
# Get the pivot tables in the sheet | |
pivotTables = sheet.pivot_tables | |
# Get the first PivotTable | |
pivotTable = pivotTables[0] | |
# Clear all the data fields | |
pivotTable.data_fields.clear() | |
# Add new data field | |
pivotTable.add_field_to_area(PivotFieldType.DATA, "Betrag Netto FW") | |
# Set the refresh data flag on | |
pivotTable.refresh_data_flag = False | |
# Refresh and calculate the pivot table data | |
pivotTable.refresh_data() | |
pivotTable.calculate_data() | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |