Quantcast
Channel: SmartClient Forums
Viewing all articles
Browse latest Browse all 4756

SmartGWT MultiSeries chart Export Layout Issue

$
0
0
hi isomorphic,

when exporting an MultiSeries chart there is a little problem with the x-axis label. The small -very important- icons (see screenshot: Webpage.PNG) are missing in the export. :-(.
The exported file is: Export.png

Please use to reproduce this test case.
Code:

package com.smartgwt.sample.client;

import com.google.gwt.core.client.EntryPoint;
import com.smartgwt.client.data.DSRequest;
import com.smartgwt.client.rpc.RPCManager;
import com.smartgwt.client.types.ChartType;
import com.smartgwt.client.types.ExportDisplay;
import com.smartgwt.client.types.ExportImageFormat;
import com.smartgwt.client.widgets.Button;
import com.smartgwt.client.widgets.chart.FacetChart;
import com.smartgwt.client.widgets.chart.MetricSettings;
import com.smartgwt.client.widgets.cube.Facet;
import com.smartgwt.client.widgets.cube.FacetValue;
import com.smartgwt.client.widgets.events.ClickEvent;
import com.smartgwt.client.widgets.events.ClickHandler;
import com.smartgwt.client.widgets.layout.VLayout;

public class MultiSeriesChartMA implements EntryPoint {

        @Override
        public void onModuleLoad() {
                final FacetChart chart = new FacetChart();
                chart.setWidth(508);
                chart.setHeight(400);
                chart.setChartType(ChartType.COLUMN);
                chart.setStacked(true);
                chart.setValueTitle("Percent");
                chart.setBorder("1px solid black");
                chart.setShowTitle(false);
                chart.setShowChartRect(true);
                chart.setDataMargin(12);
                chart.setBarMargin(27);
                chart.setMinBarThickness(25);
                chart.setDataColors(new String[]{"#fffd53", "#f8c14c", "#60ffff", "#97E997", "#F36050", "#7F62B4"});
                chart.setCanZoom(true);

                Facet areaFacet = new Facet();
                areaFacet.setValues(
                                new FacetValue("1", "North America"),
                                new FacetValue("2", "Europe"),
                                new FacetValue("3", "Asia-Pacific"));
                areaFacet.setId("area");
                Facet metricFacet = new Facet();
                metricFacet.setValues(new FacetValue("percent", "Percent"),
                                new FacetValue("events", "Events"));
                metricFacet.setInlinedValues(true);
                metricFacet.setId("metric");

                chart.setFacets(new Facet("date"), areaFacet, metricFacet);
                chart.setExtraAxisMetrics("events");
                MetricSettings metricSettings = new MetricSettings();
                metricSettings.setChartType(ChartType.LINE);
                metricSettings.setMultiFacet(true);
                metricSettings.setShowDataPoints(true);
                metricSettings.setValueTitle("Events");
                chart.setExtraAxisSettings(metricSettings);

                chart.setData(MultiAxisChartData.getData());

                VLayout layout = new VLayout(15);
                layout.addMember(chart);

                Button downloadButton = new Button("Download as Image");
                downloadButton.addClickHandler(new ClickHandler() {

                        @Override
                        public void onClick(ClickEvent event) {
                                final DSRequest requestProperties = new DSRequest();
                                requestProperties.setExportDisplay(ExportDisplay.DOWNLOAD);
                                requestProperties.setExportFilename("Revenue");
                                requestProperties.setExportImageFormat(ExportImageFormat.PNG);
                                RPCManager.exportImage(chart.getSvgString(), requestProperties);

                        }
                });

                layout.addMember(downloadButton);

                layout.draw();
        }

}

Code:

package com.smartgwt.sample.client;
import com.smartgwt.client.data.Record;

public class MultiAxisChartData extends Record {

        public MultiAxisChartData(String area, String date, float percent, int events) {
                setAttribute("area", area);
                setAttribute("date", date);
                setAttribute("percent", percent);
                setAttribute("events", events);
        }

        public static MultiAxisChartData[] getData() {
                return new MultiAxisChartData[] {
                                new MultiAxisChartData("1", "13 Sep 12", 0.55f, 8751),
                                new MultiAxisChartData("2", "13 Sep 12", 0.32f, 3210),
                                new MultiAxisChartData("3", "13 Sep 12", 0.21f, 2071),
                                new MultiAxisChartData("1", "14 Sep 12", 0.49f, 6367),
                                new MultiAxisChartData("2", "14 Sep 12", 0.41f, 3771),
                                new MultiAxisChartData("3", "14 Sep 12", 0.22f, 2166),
                                new MultiAxisChartData("1", "15 Sep 12", 0.7f, 6011),
                                new MultiAxisChartData("2", "15 Sep 12", 0.19f, 1950),
                                new MultiAxisChartData("3", "15 Sep 12", 1.95f, 552375),
                                new MultiAxisChartData("1", "16 Sep 12", 0.47f, 9234),
                                new MultiAxisChartData("2", "16 Sep 12", 0.25f, 4321),
                                new MultiAxisChartData("3", "16 Sep 12", 0.3f, 909),
                                new MultiAxisChartData("1", "17 Sep 12", 0.3f, 6144),
                                new MultiAxisChartData("2", "17 Sep 12", 0.44f, 4077),
                                new MultiAxisChartData("3", "17 Sep 12", 0.06f, 1477),
                                new MultiAxisChartData("1", "18 Sep 12", 0.7f, 8502),
                                new MultiAxisChartData("2", "18 Sep 12", 0.29f, 3061),
                                new MultiAxisChartData("3", "18 Sep 12", 0.22f, 2955),
                                new MultiAxisChartData("1", "19 Sep 12", 0.45f, 7020),
                                new MultiAxisChartData("2", "19 Sep 12", 0.22f, 3040),
                                new MultiAxisChartData("3", "19 Sep 12", 0.31f, 2177),
                                new MultiAxisChartData("2", "20 Sep 12", 0.21f, 4981),

                                new MultiAxisChartData("1", "20 Sep 12", 0.69f, 6712),
                                new MultiAxisChartData("1", "21 Sep 12", 0.6f, 9321),
                                new MultiAxisChartData("3", "20 Sep 12", 0.12f, 1234),
                                new MultiAxisChartData("3", "21 Sep 12", 0.35f, 6622),
                                new MultiAxisChartData("2", "21 Sep 12", 0.29f, 6532),
                                new MultiAxisChartData("2", "22 Sep 12", 0.35f, 5104),
                                new MultiAxisChartData("3", "22 Sep 12", 0.3f, 5111),
                                new MultiAxisChartData("1", "22 Sep 12", 0.37f, 8389),
                                new MultiAxisChartData("1", "23 Sep 12", 0.4f, 7555),
                                new MultiAxisChartData("2", "23 Sep 12", 0.34f, 2345),
                                new MultiAxisChartData("3", "23 Sep 12", 0.16f, 3456),
                                new MultiAxisChartData("1", "24 Sep 12", 0.62f, 9567),
                                new MultiAxisChartData("2", "24 Sep 12", 0.12f, 5678),
                                new MultiAxisChartData("3", "24 Sep 12", 0.37f, 6789)
                };
        }

}

i used: Isomorphic SmartClient/SmartGWT Framework (v9.0p_2014-02-26/PowerEdition Deployment 2014-02-26)

best regards,
mirko

Attached Images
File Type: png Webpage.PNG (45.1 KB)
File Type: png Export.png (19.5 KB)

Viewing all articles
Browse latest Browse all 4756

Trending Articles