Créer un graphique bourse Volume Haut Bas Fermeture (VHLC) avec C++
Contents
[
Hide
]
Scénarios d’utilisation possibles
Le troisième graphique boursier que nous examinerons est le graphique Volume Haut Bas Fermeture. Il est encore une fois important de répéter que vous devez avoir les données dans le bon ordre. Si vous devez réorganiser votre tableau de données, faites-le avant de configurer votre graphique. Ce graphique comprend une colonne pour le volume immédiatement après la première (catégorie), et les graphiques incluent un graphique en colonnes sur l’axe primaire montrant ce volume, tandis que les prix sont déplacés vers l’axe secondaire.
Graphique boursier Volume-Haut-Bas-Fermeture (VHLC)
Code d’exemple
Le code d’exemple suivant charge le fichier Excel d’exemple et génère le fichier Excel de sortie.
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// Create an instance of Workbook
Workbook workbook(u"Volume-High-Low-Close.xlsx");
// Access the first worksheet
Worksheet worksheet = workbook.GetWorksheets().Get(0);
// Create High-Low-Close Stock Chart
int32_t pieIdx = worksheet.GetCharts().Add(ChartType::StockVolumeHighLowClose, 5, 6, 20, 12);
// Retrieve the Chart object
Chart chart = worksheet.GetCharts().Get(pieIdx);
// Set the legend can be showed
chart.SetShowLegend(true);
// Set the chart title name
chart.GetTitle().SetText(u"Volume-High-Low-Close Stock");
// Set the Legend at the bottom of the chart area
chart.GetLegend().SetPosition(LegendPositionType::Bottom);
// Set data range
chart.SetChartDataRange(u"A1:E9", true);
// Set category data
chart.GetNSeries().SetCategoryData(u"A2:A9");
// Set Color for the first series (Volume) data
chart.GetNSeries().Get(0).GetArea().SetForegroundColor(Color{ 79, 129, 189 });
// Fill the PlotArea area with nothing
chart.GetPlotArea().GetArea().GetFillFormat().SetFillType(FillType::None);
// Save the Excel file
workbook.Save(u"out.xlsx");
std::cout << "Chart created and saved successfully!" << std::endl;
Aspose::Cells::Cleanup();
}