This section of document describes how to use meta data model for customizing series visualization. There are 6 MetaData types:
Meta data model can be used either for series or for markers.
Setting MetaDataModel:
//sets a new MetaDataModel object MetaDataModel meta1 = new MetaDataModel(); |
Setting parameters for whole series:
//sets for all series label "NewLabel" meta1.setData(MetaDataType.LABEL, "NewLabel"); |
Setting parameter for a particular series:
//sets series with index 0 label "Special Series" meta1.setData(MetaDataType.LABEL,0, "Special Series"); |
Setting parameters using logical expression: It is possible to set MetaData for particular series, that meet requirements that are defined using logical expressions. These expressions are discussed in more details in LogicalParser chapter. However, here x0 refers to KEYS, x1 to VALUES, x2 to EXTENT and so on.
1 | //sets style for series where KEY is less than 2 meta1.setData(MetaDataType.STYLE, "x0<2", style2); //sets style for series where VALUE is more than 1 meta1.setData(MetaDataType.LABEL, "x1>1", "Value more than 1"); |
Setting label “More than avg” for bars where KEY values are greater than 5. In order to use this MetaDataType, LabeledMarker should be used.
meta1.setData(MetaDataType.LABEL, "x0>5", "More than avg"); |
Figure 5.1.6.1 MetaDataType.LABEL Demonstration
This code formats label string for the VALUES less than 200 to display string “Too little”.:
metaModel.setData(MetaDataType.HINT,"x1<200","Too little"); |
MetaDataType.STYLE might be used for formatting series colors, transparency and so on, where there is a need to format specific bar, pie's sector or other object.
1 | Styles style = new Styles(); //sets style object style.getPaintStyle().setBackground(new Color(250,168,23)); //sets background color style.getPaintStyle().setForeground(new Color(250,168,23)); //sets foreground color MetaDataModel meta1 = new MetaDataModel(); //set MetaDataModel object meta1.setData(MetaDataType.STYLE, 0, style); //sets style for first bar meta1.setData(MetaDataType.STYLE, 2, style); //sets style for third bar |
Figure 5.1.6.2 MetaDataType.STYLE Demonstration
Setting date format for all data points (it is also posible to specify it for a particular point):
metaModel.setData(MetaDataType.DATE_FORMAT,"yy.MM.dd"); |
Setting number format for all data points (it is also possible to specify it for a particular point):
metaModel.setData(MetaDataType.NUMBER_FORMAT,"#.00"); |
This sample shows how to set bar width. Here we specify that for VALUES less than 2000 bar width should be 0.06.
meta1.setData(MetaDataType.BAR_WIDTH, "x1<2000", "0.06"); |
Figure 5.1.6.3 MetaDataType.BAR_WIDTH Demonstration
MetaDataType.PIE_EXPLODE might be used for setting PieSeries sectors explode.
1 | // sets explode for specific sectors meta1.setData(MetaDataType.PIE_EXPLODE, 0, new Double(0.1)); meta1.setData(MetaDataType.PIE_EXPLODE, 1, new Double(0.045)); meta1.setData(MetaDataType.PIE_EXPLODE, 2, new Double(0.045)); meta1.setData(MetaDataType.PIE_EXPLODE, 3, new Double(0.05)); |
Figure 5.1.6.4 MetaDataType.PIE_EXPLODE Demonstration
MetaDataType.PIE_HEIGHT might be used for setting Pie3DSeries sectors height.
Figure 5.1.6.5 MetaDataType.PIE_EXPLODE Demonstration