{ "type": "class",
  "qname": "mx.charts.effects.SeriesZoom",
  "baseClassname": "mx.charts.effects.SeriesEffect"
  ,
    "description": "The SeriesZoom effect implodes and explodes chart data into and out of the focal point that you specify. As with the SeriesSlide effect, whether the effect is zooming to or from this point depends on whether it is assigned to the <code>showDataEffect</code> or <code>hideDataEffect</code> effect trigger.   <p>The <code>&lt;mx:SeriesZoom&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:</p>  <pre>\\n &lt;mx:SeriesZoom\\n <strong>Properties</strong>\\n horizontalFocus=&quot;center|left|right|null&quot;\\n relativeTo=&quot;series|chart&quot;\\n verticalFocus=&quot;top|center|bottom|null&quot;\\n /&gt;\\n </pre>",
  "tags": [
  {  "tagName": "includeExample",
         "values": ["examples/SeriesZoomExample.mxml"]},
      {  "tagName": "mxml",
         "values": []},
      {  "tagName": "playerversion",
         "values": ["Flash 9", "AIR 1.1"]},
      {  "tagName": "productversion",
         "values": ["Flex 3"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "method",
        "qname": "mx.charts.effects.SeriesZoom",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Constructor.",
        "tags": [
        {  "tagName": "param",
               "values": ["target The target of the effect."]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "",
          "params": [{ "name": "target", "type": "Object"}]}
      ,
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "horizontalFocus",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Defines the location of the focul point of the zoom.  <p>Valid values of the <code>horizontalFocus</code> property are <code>&quot;left&quot;</code>, <code>&quot;center&quot;</code>, <code>&quot;right&quot;</code>, and <code>null</code>.</p>  <p>You combine the <code>horizontalFocus</code> and <code>verticalFocus</code> properties to define where the data series zooms in and out from. For example, set the <code>horizontalFocus</code> property to <code>&quot;left&quot;</code> and the <code>verticalFocus</code> property to <code>&quot;top&quot;</code> to zoom the series data to and from the top left corner of either the element or the chart (depending on the setting of the <code>relativeTo</code> property).</p>  <p>If you specify only one of these two properties, then the focus is a horizontal or vertical line rather than a point. For example, when you set <code>horizontalFocus</code> to <code>&quot;left&quot;</code> but <code>verticalFocus</code> to <code>null</code>, the element zooms to and from a vertical line along the left edge of its bounding box. Set the <code>verticalFocus</code> property to <code>&quot;center&quot;</code> to zoom chart elements to and from a horizontal line along the middle of the chart's bounding box.</p>",
        "tags": [
        {  "tagName": "default",
               "values": [""center""]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "relativeTo",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Controls the bounding box that Flex uses to calculate the focal point of the zooms.  <p>Valid values for the <code>relativeTo</code> property are <code>&quot;series&quot;</code> and <code>&quot;chart&quot;</code>.</p>  <p>Set to <code>&quot;series&quot;</code> to zoom each element relative to itself. For example, each column of a ColumnChart zooms from the top left of the column, the center of the column, and so on.</p>  <p>Set to <code>&quot;chart&quot;</code> to zoom each element relative to the chart area. For example, each column zooms from the top left of the axes, the center of the axes, and so on.</p>",
        "tags": [
        {  "tagName": "default",
               "values": [""series""]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "verticalFocus",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Defines the location of the focal point of the zoom. For more information, see the description of the <code>horizontalFocus</code> property.  <p>Valid values of <code>verticalFocus</code> are <code>&quot;top&quot;</code>, <code>&quot;center&quot;</code>, <code>&quot;bottom&quot;</code>, and <code>null</code>.</p>",
        "tags": [
        {  "tagName": "default",
               "values": [""center""]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]}]
  }
