Cómo crear un gráfico de tornado con C++
Introducción
Un gráfico tornado, también conocido como diagrama tornado o gráfico tornado, es un tipo de visualización de datos que se utiliza a menudo para análisis de sensibilidad en Excel. Te ayuda a comprender el impacto de cambiar variables en un resultado particular.
Cómo crear un gráfico tornado en Excel
Puedes crear un gráfico tornado en Excel siguiendo estos pasos:
- Selecciona los datos y ve a Insertar –> Gráficos –> Insertar gráfico de columnas o barras –> Gráfico de barras apiladas. Haz clic en él.
- Cambia el eje Y: Haz clic derecho en el eje Y. Haz clic en formato de eje. En etiquetas, haz clic en posición de la etiqueta desplegable y selecciona elemento inferior.
- Selecciona cualquier barra y ve a formato. Establece un ancho de espacio adecuado.
- Vamos a quitar el signo menos (-) del gráfico tornado. Selecciona el eje X. Ve a formato. En las opciones del eje, haz clic en el número. En categoría, selecciona personalizado. En código de formato escribe ###0,###0. Haz clic en añadir.
- Haz clic en el eje y y ve a las opciones del eje. En las opciones del eje, marca Categorías en orden inverso.
Cómo agregar un gráfico tornado en Aspose.Cells
Por favor, consulta el siguiente código de muestra. Carga el archivo de Excel de muestra que contiene algunos datos de ejemplo. Luego, crea el gráfico de barras apiladas basado en los datos iniciales y establece propiedades relevantes. Finalmente, guarda el libro de trabajo en formato XLSX de salida. La siguiente captura de pantalla muestra el gráfico tornado creado por Aspose.Cells en el archivo de Excel de salida.
Código de muestra
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// Source directory path
U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
// Output directory path
U16String outDir(u"..\\Data\\02_OutputDirectory\\");
// Path of input excel file
U16String inputFilePath = srcDir + u"sample.xlsx";
// Path of output excel file
U16String outputFilePath = outDir + u"out.xlsx";
// Create workbook
Workbook wb(inputFilePath);
// Get the first worksheet
Worksheet sheet = wb.GetWorksheets().Get(0);
// Get the chart collection from the worksheet
ChartCollection charts = sheet.GetCharts();
// Add a bar chart
int index = charts.Add(ChartType::BarStacked, 8, 1, 24, 8);
Chart chart = charts.Get(index);
// Set data for the bar chart
chart.SetChartDataRange(u"A1:C7", true);
// Set properties for the bar chart
chart.GetTitle().SetText(u"Tornado chart");
chart.SetStyle(2);
chart.GetPlotArea().GetArea().SetForegroundColor(Color::White());
chart.GetPlotArea().GetBorder().SetColor(Color::White());
chart.GetLegend().SetPosition(LegendPositionType::Bottom);
// Set properties for the category axis
chart.GetCategoryAxis().SetTickLabelPosition(TickLabelPositionType::Low);
chart.GetCategoryAxis().SetIsPlotOrderReversed(true);
// Set gap width
chart.SetGapWidth(10);
// Set properties for the value axis
Axis valueAxis = chart.GetValueAxis();
valueAxis.GetTickLabels().SetNumberFormat(u"#,##0;#,##0");
// Save the workbook
wb.Save(outputFilePath);
std::cout << "Chart created successfully!" << std::endl;
Aspose::Cells::Cleanup();
}