إنشاء رسم بياني للحجم العالي والمنخفض والإغلاق مع C++

سيناريوهات الاستخدام المحتملة

الرسم البياني الثالث الذي سنلقي نظرة عليه هو رسم بياني للحجم العالي والمنخفض والإغلاق. مرة أخرى، من المهم تكرار أن البيانات يجب أن تكون في الترتيب الصحيح. إذا احتجت إلى إعادة ترتيب جدول البيانات الخاص بك، يجب أن تفعله قبل إعداد رسمك البياني. يتضمن هذا الرسم عمودًا للحجم بعد العمود التصنيفي الأول، وتظهر الرسوم البيانية عمودًا على المحور الرئيسي يوضح هذا الحجم، بينما تنتقل الأسعار إلى المحور الثانوي.

todo:image_alt_text

رسم بياني للمخزون - ارتفاع - منخفض - إغلاق (VHLC)

todo:image_alt_text

الكود المثالي

الكود عينة التالي يقوم بتحميل ملف Excel عينة ويولّد ملف Excel الناتج.

#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();
}