同じパネルに複数のチャートを表示したいだけです。使用するグラフの種類 (列、折れ線、円など) は関係ありません。その結果、表示しようとするチャートの数に関係なく、最初のチャートのみにラベルが付けられます。このスクリーン ショットを参照してください。
2 番目のグラフでは、x 軸と y 軸のラベルと、データ セットのラベルが欠落しています。Chrome、Firefox、IE でテストしました。いつも同じ。
私が使用するコードは次のとおりです。
VerticalPanel panel=new VerticalPanel();
final int height = 400;
final int width = 1200;
Date d = new Date();
//message data
final DataTable msgData = DataTable.create();
msgData.addColumn(ColumnType.DATE, "date");
msgData.addColumn(ColumnType.NUMBER, "data one");
msgData.addColumn(ColumnType.NUMBER, "data two");
msgData.addRows(6);
for (int i = 0; i < 6; i++)
{
d.setTime(d.getTime() + (1000 * 60 * 60 * 24));
msgData.setValue(i, 0, d);
msgData.setValue(i, 1, i + 11);
msgData.setValue(i, 2, i + 12);
}
final Options options = Options.create();
options.setWidth(width);
options.setHeight(height);
options.setIsStacked(true);
options.setTitle("Chart One");
panel.add(new ColumnChart(msgData, options));
d = new Date();
//new data
final DataTable newData = DataTable.create();
newData.addColumn(ColumnType.DATE, "date");
newData.addColumn(ColumnType.NUMBER, "data three");
newData.addColumn(ColumnType.NUMBER, "data four");
newData.addRows(5);
for (int i = 0; i < 5; i++)
{
d.setTime(d.getTime() + (1000 * 60 * 60 * 24));
newData.setValue(i, 0, d);
newData.setValue(i, 1, i + 3);
newData.setValue(i, 2, i + 4);
}
final Options options_new = Options.create();
options_new.setWidth(width);
options_new.setHeight(height);
options_new.setIsStacked(true);
options_new.setTitle("Chart two");
panel.add(new ColumnChart(newData, options_new));
生成されたhtmlをfirebugで確認しました。グラフは SVG を使用してレンダリングされ、2 番目のグラフにはラベルの svg タグがありませんが、最初のグラフには存在します。そのため、欠落しているラベルは切り取られたり隠されたりすることはなく、作成さえされません。
ご協力いただきありがとうございます