高値 安値 終値(HLC)株式チャートをC++で作成
Contents
[
Hide
]
可能な使用シナリオ
HLC株価チャートは4つのデータ列を使用します。最初の列は通常、日付ですが、株名も使用できます。次の3列は、順に高値、安値、終値です。各カテゴリの価格範囲は、安値から高値までの垂直線で示され、終値はこの線の右側に伸びる印が表示されます。
チャートの可視性の改善
時には、チャートを直感的に見やすくするために、マーカー(終値)の外観を修正したり、2次軸に表示したりすることがあります。
サンプルコード
次のサンプルコードはsample Excel fileをロードし、output Excel fileを生成します。
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// Create an instance of Workbook
Workbook workbook(u"High-Low-Close.xlsx");
// Access the first worksheet
Worksheet worksheet = workbook.GetWorksheets().Get(0);
// Create High-Low-Close-Stock Chart
int pieIdx = worksheet.GetCharts().Add(ChartType::StockHighLowClose, 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"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:D9", true);
// Set category data
chart.GetNSeries().GetCategoryData() = u"A2:A9";
// Set the marker with the built-in data
chart.GetNSeries().Get(2).GetMarker().SetMarkerStyle(ChartMarkerType::Dash);
chart.GetNSeries().Get(2).GetMarker().SetMarkerSize(20);
chart.GetNSeries().Get(2).GetMarker().GetArea().SetFormatting(FormattingType::Custom);
chart.GetNSeries().Get(2).GetMarker().GetArea().SetForegroundColor(Color::Maroon());
// 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 Excel file saved successfully!" << std::endl;
Aspose::Cells::Cleanup();
}