/* * (non-Javadoc) * * @see com.ibm.examples.chart.widget.AbstractChartBuilder#buildLegend() */ protected void buildLegend() { createLegend(); chart.getLegend().setItemType(LegendItemType.SERIES_LITERAL); chart.getLegend().getClientArea().getOutline().setVisible(true); chart.getLegend().setVisible(true); chart.getLegend().getText().getFont().setSize(7); }
/* * (non-Javadoc) * * @see com.ibm.examples.chart.widget.AbstractChartBuilder#buildChart() */ protected void createChart() { data = adapter.getData(); while (data.length == 0) { data = adapter.getData(); } IPreferenceStore store = GraphingAPIUIPlugin.getDefault().getPreferenceStore(); xSeriesTicks = store.getInt(GraphingAPIPreferenceConstants.P_X_SERIES_TICKS); ySeriesTicks = store.getInt(GraphingAPIPreferenceConstants.P_Y_SERIES_TICKS); maxItems = store.getInt(GraphingAPIPreferenceConstants.P_MAX_DATA_ITEMS); viewableItems = store.getInt(GraphingAPIPreferenceConstants.P_VIEWABLE_DATA_ITEMS); chart = ChartWithAxesImpl.create(); chart.setDimension(ChartDimension.TWO_DIMENSIONAL_LITERAL); chart.setType("Scatter Chart"); // Plot // chart.getBlock( ).setBackground(ColorDefinitionImpl.WHITE( ) ); // Plot p = chart.getPlot( ); /// p.getClientArea( ).setBackground(GradientImpl.create( ColorDefinitionImpl.create( // 225,225,255 ),ColorDefinitionImpl.create( 255, 255, 225 ),-35,false ) ); // p.getOutline( ).setVisible( true ); // Title cwaBar.getTitle( ) .getLabel() .getCaption( ) // .setValue( "Bar Chart with Multiple Y Series" );//$NON-NLS-1$ // Legend // Legend lg = cwaBar.getLegend( ); // lg.getText( // ).getFont( ).setSize( 16 ); lg.getInsets( ).set( 10, 5, 0, 0 ); // lg.setAnchor( Anchor.NORTH_LITERAL ); }
public void updateDataSet() { // Associate with Data Set try { data = adapter.getData(); int starting = 0; if (data.length > xSeriesTicks) starting = data.length - xSeriesTicks; x = new String[data.length - starting]; for (int j = starting, k = 0; j < data.length; j++, k++) x[k] = data[j][0].toString(); // X-Axis TextDataSet categoryValues = TextDataSetImpl.create(x); Axis xAxisPrimary = chart.getPrimaryBaseAxes()[0]; SeriesDefinition sdX = (SeriesDefinition) xAxisPrimary.getSeriesDefinitions().get(0); ((Series) sdX.getSeries().get(0)).setDataSet(categoryValues); // Y-Axis Axis yAxisPrimary = chart.getPrimaryOrthogonalAxis(xAxisPrimary); // chart.getOrthogonalAxes(xAxisPrimary, arg1) NumberDataSet orthoValuesDataSet1[] = new NumberDataSet[adapter.getSeriesCount()]; for (int i = 1; i <= adapter.getSeriesCount(); i++) { y = new Double[data.length - starting]; for (int j = starting, k = 0; j < data.length; j++, k++) { y[k] = NumberType.obj2num(data[j][i]).doubleValue(); if (max < y[k]) max = y[k]; } orthoValuesDataSet1[i - 1] = NumberDataSetImpl.create(y); SeriesDefinition sdY = (SeriesDefinition) yAxisPrimary.getSeriesDefinitions().get(i - 1); ((Series) sdY.getSeries().get(0)).setDataSet(orthoValuesDataSet1[i - 1]); } yAxis.getScale().setStep(max / 5); yAxis.getScale().setMax(NumberDataElementImpl.create(max)); } catch (Exception e) { // e.printStackTrace(); } }
protected void buildTitle() { chart.getTitle().getLabel().getCaption().setValue(title); chart.getTitle().getLabel().getCaption().getFont().setSize(10); chart.getTitle().getLabel().getCaption().getFont().setName(FONT_NAME); }
public static final Chart createSeriesScript() { ChartWithAxes cwaBar = ChartWithAxesImpl.create(); cwaBar.setType("Bar Chart"); // $NON-NLS-1$ cwaBar.setSubType("Side-by-side"); // $NON-NLS-1$ cwaBar.setScript( "function beforeDrawSeries(series, renderer, scriptContext)" //$NON-NLS-1$ + "{series.getLabel().getCaption().getColor().set(12, 232, 182);}" //$NON-NLS-1$ ); cwaBar.getLegend().setVisible(false); cwaBar.getTitle().getLabel().getCaption().setValue("Chart with Series Script"); // $NON-NLS-1$ // X-Axis Axis xAxisPrimary = cwaBar.getPrimaryBaseAxes()[0]; xAxisPrimary.setType(AxisType.TEXT_LITERAL); xAxisPrimary.getOrigin().setType(IntersectionType.VALUE_LITERAL); // Y-Axis Axis yAxisPrimary = cwaBar.getPrimaryOrthogonalAxis(xAxisPrimary); yAxisPrimary.getMajorGrid().setTickStyle(TickStyle.LEFT_LITERAL); yAxisPrimary.setType(AxisType.LINEAR_LITERAL); // Data Set TextDataSet categoryValues = TextDataSetImpl.create( new String[] { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" }); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ NumberDataSet orthoValues = NumberDataSetImpl.create(new double[] {8, 18, -15, -8, 10}); SampleData sd = DataFactory.eINSTANCE.createSampleData(); BaseSampleData sdBase = DataFactory.eINSTANCE.createBaseSampleData(); sdBase.setDataSetRepresentation(""); // $NON-NLS-1$ sd.getBaseSampleData().add(sdBase); OrthogonalSampleData sdOrthogonal = DataFactory.eINSTANCE.createOrthogonalSampleData(); sdOrthogonal.setDataSetRepresentation(""); // $NON-NLS-1$ sdOrthogonal.setSeriesDefinitionIndex(0); sd.getOrthogonalSampleData().add(sdOrthogonal); cwaBar.setSampleData(sd); // X-Series Series seCategory = SeriesImpl.create(); seCategory.setDataSet(categoryValues); SeriesDefinition sdX = SeriesDefinitionImpl.create(); xAxisPrimary.getSeriesDefinitions().add(sdX); sdX.getSeries().add(seCategory); // Y-Series BarSeries bs = (BarSeries) BarSeriesImpl.create(); bs.setDataSet(orthoValues); bs.getLabel().setVisible(true); SeriesDefinition sdY = SeriesDefinitionImpl.create(); yAxisPrimary.getSeriesDefinitions().add(sdY); sdY.getSeries().add(bs); return cwaBar; }
/** * Creates a scatter chart model as a reference implementation * * @return An instance of the simulated runtime chart model (containing filled datasets) */ public static final Chart createDateTimeScatter() { ChartWithAxes cwaScatter = ChartWithAxesImpl.create(); // TODO: research running script under plugin test. cwaScatter.setScript( "function beforeDrawAxisLabel(axis, label, context)" //$NON-NLS-1$ + "{label.getCaption().setValue(\"ABC\"); " //$NON-NLS-1$ + "axis.setLabel(label);}" //$NON-NLS-1$ ); // Plot cwaScatter.getPlot().getClientArea().getOutline().setVisible(true); // Title cwaScatter.getTitle().setVisible(false); // X-Axis Axis xAxisPrimary = ((ChartWithAxesImpl) cwaScatter).getPrimaryBaseAxes()[0]; xAxisPrimary.getTitle().getCaption().setValue("Time"); xAxisPrimary.setType(AxisType.DATE_TIME_LITERAL); xAxisPrimary.getTitle().setVisible(true); xAxisPrimary.getOrigin().setType(IntersectionType.MIN_LITERAL); // Y-Axis Axis yAxisPrimary = ((ChartWithAxesImpl) cwaScatter).getPrimaryOrthogonalAxis(xAxisPrimary); yAxisPrimary.getTitle().getCaption().setValue("Score"); yAxisPrimary.getTitle().setBackground(ColorDefinitionImpl.WHITE()); yAxisPrimary.getTitle().setVisible(true); yAxisPrimary.setType(AxisType.LINEAR_LITERAL); yAxisPrimary.getOrigin().setType(IntersectionType.MIN_LITERAL); // create chart data int seriesLen = 10; double[] yseries = new double[seriesLen]; Calendar[] datetime = new Calendar[seriesLen]; for (int i = 0; i < seriesLen; i++) { yseries[i] = ((double) i); datetime[i] = new GregorianCalendar(); datetime[i].setTime(new Date(i)); // uncomment the following line and chart works ok // datetime[i].setTime(new Date(i*1000)); } NumberDataSet dsNumericValues2 = NumberDataSetImpl.create(yseries); DateTimeDataSet dsDateTime = DateTimeDataSetImpl.create(datetime); // X-Series Series seBase = SeriesImpl.create(); seBase.setDataSet(dsDateTime); SeriesDefinition sdX = SeriesDefinitionImpl.create(); xAxisPrimary.getSeriesDefinitions().add(sdX); sdX.getSeries().add(seBase); // Y-Series ScatterSeries ss = (ScatterSeries) ScatterSeriesImpl.create(); ss.setDataSet(dsNumericValues2); SeriesDefinition sdY = SeriesDefinitionImpl.create(); yAxisPrimary.getSeriesDefinitions().add(sdY); sdY.getSeries().add(ss); return cwaScatter; }