EspressChartでは複数のデータソースを読み込みし、チャートを生成できます。この機能はデータソースとなるファイルが複数に分かれている場合や、異なるデータベースをデータソースとして、一つのチャートを生成したい場合に便利です。
チャートデザイナーの場合は新規でチャートを作成する際のデータソースの指定で、一つ指定した後に「Get Other Data Source」で別のデータソースを指定してというように複数のデータソースを指定できます。

このチャートデザイナーで作成したテンプレートファイルを使用してQbChartコンストラクタでチャートを生成する際に、それに含まれるデータソースへの接続(参照)情報を利用できるのであれば、そのままチャートを生成できます。
しかし、別の環境でチャートを生成する場合など、別のデータソースを指定しなおす必要がある場合には、データソースを指定しなおす必要があります。ただ、これにはQbChartコンストラクタのみでは対応できず、setDataFileメソッドなどでデータソースを指定して場合、上書き扱いとなるため、1つのデータソースしか指定できません。
APIから読み込み場合には、上記の方法ではなく、DataSheetコンストラクタを利用します。
複数のデータソースをマージする機能を提供するクラスであり、これで各種データソースを読み込み、DataSheet配列をQbChartコンストラクタで使用することでAPIからも複数のデータソースを読み込み、チャートに適用できます。
使用例
//データソースのファイルパス
String dataFilePath1="./data/2020.txt";
String dataFilePath2="./data/2021.txt";
//DataSheetを作成
DataSheet dataSheet1= new DataSheet(parent, dataFilePath1 ,false);
DataSheet dataSheet2= new DataSheet(parent, dataFilePath2 ,false);
//配列にしてマージ
DataSheet[] dataSheet= {dataSheet1, dataSheet2};
//テンプレートファイルのパス
String templatePath = "./chart/multi.tpl";
//読み込み時に転置する列を指定する配列
int[] transposeCol = {1,2,4,5};
//読み込み時の列の対応付けを指定する配列
ColInfo cmap = new ColInfo();
cmap.series = 2;
cmap.category = 0;
cmap.value = 3;
//DataSheet配列をデータソースとしてチャートを作成
QbChart chart = new QbChart(parent,
QbChart.VIEW2D,
QbChart.COL,
dataSheet,
true,
transposeCol,
cmap,
templatePath);
上記の例では、2つのデータソースファイルを読み込み、マージ後のデータに対して転置を指定しています。
そうではなく、個別のDataSheetでメソッドを使用して行の追加(addRow)や削除(deleteRow)、更新(updateRow)、転置(transpose)なども実施できますので、データソースをDataSheetとして読み込み、個別に調整したあと、マージするといったことも可能です。

RSSフィードを取得する