0

同じパネルに複数のチャートを表示したいだけです。使用するグラフの種類 (列、折れ線、円など) は関係ありません。その結果、表示しようとするチャートの数に関係なく、最初のチャートのみにラベルが付けられます。このスクリーン ショットを参照してください。

ここに画像の説明を入力

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 タグがありませんが、最初のグラフには存在します。そのため、欠落しているラベルは切り取られたり隠されたりすることはなく、作成さえされません。

ご協力いただきありがとうございます

4

0 に答える 0