libxlsxwriter で散布図を作るサンプル

概要

Excel ファイル(拡張子 .xlsx) を作成できる C++ のライブラリ libxlsxwriter を使って、タブ区切りのテキストデータから散布図を作るサンプルプログラムを作ってみました。 同じようなグラフをExcelで作る作業を繰り返す必要があるような場合、入力データの書式を揃えておけば値の範囲を毎回マウス操作で選択したり直したりする操作が不要になるので、 作業がラクになるのではないかと思います。

入力データ例

2つのグラフ(Chart1 と Chart2)がシート内に書き込まれる例です。 Chart1 には、axis0 の行の値が横軸になる凡例2つ(legend1、legend2)が書き込まれます。 Chart2 には、axis2 の行の値が横軸になる凡例2つ(legendA、legendB)と、axis3 の行の値が横軸になる凡例1つ(legendC)が書き込まれます。 タブのみを区切り文字として扱います。スペースは区切り文字とみなしません。

[Chart1]
*axis	0	1	2	3	4	5
legend1	1	10	15	20	30	40
legend2	5	15	20	22	21	22
[Chart2]
*axis2	10	11	12	13	14	15
legendA	1	10	15	20	30	40
legendB	5	15	20	22	21	22
*axis3	20	20.5	21.5	23.2	24.2	24.4	25.8
legendC	5	10	23	26	20	15	12

ソース

CreateChartソース libxlsxwriter のほかに Tcl/Tk や TTW に依存していますので、Tcl/Tk のファイル群を tar でまとめた状態で実行可能にする方法Tcl/Tkのdll群も1つにまとめる方法を参考にしてビルドしてください。