[ https://issues.apache.org/jira/browse/FLEX-33161?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Toni Vega updated FLEX-33161: ----------------------------- Attachment: Y axis Scaling problem for chart with two Y axis.zip A line with two vertical axis.zip > Y axis Scaling problem for chart with two Y axis > ------------------------------------------------ > > Key: FLEX-33161 > URL: https://issues.apache.org/jira/browse/FLEX-33161 > Project: Apache Flex > Issue Type: Bug > Components: Charts:Multiple Axes > Affects Versions: Adobe Flex SDK 3.5 (Release), Adobe Flex SDK 3.6 > (Release), Adobe Flex SDK 4.6 (Release) > Reporter: Toni Vega > Attachments: A line with two vertical axis.zip, Y axis Scaling > problem for chart with two Y axis.zip > > > Y axis Scaling problem for chart with two Y axis > Hello, > We are trying to create a line chart having two vertical scale .We are > creating the line series, the Vertical axis and the vertical axis renderer at > runtime. The chart has two series with each scale representing the data for > one series. The scale on the left hand side represents the data for series1 > and the right hand side scale represents the data for second series2. > The problem occurs when the series1 has very small data (e.g. 10, 15, and 20) > and the series2 has very large data (e.g. 10000, 15000, and 20000). Then both > the scale shows the same values (i.e. of the series 2 > We have also noted that this problem doesn't occur if the series1 has very > large data and series2 has data in smaller units. > Below is the code that we have used > [as] > lnrAxisKpi1 = new LinearAxis(); > lnrAxisKpi1.title = KPI1Name; > axisRend = new AxisRenderer(); > axisRend.axis =lnrAxisKpi1; > axisRend.placement = "left"; > axisRend.titleRenderer = new ClassFactory(customChartTitleRenderer); > lnrAxisKpi1.labelFunction=defineVerticalLabel; > series = new LineSeries(); > series.yField = strmList[1].SITE; > series.displayName = strmList[1].SITENAME +"- "+ KPI1Name > series.id = strmList[1].SITE_ID; > series.verticalAxis = lnrAxisKpi1; > lnrAxis = new LinearAxis(); > lnrAxis.title = KPI2Name; > axisRend1 = new AxisRenderer(); > axisRend1.axis = lnrAxis; > axisRend1.placement = "right"; > axisRend1.titleRenderer = new ClassFactor(customChartTitleRenderer); > axisRend.setStyle("verticalAxisTitleAlignment","vertical"); > lnrAxis.labelFunction=defineVerticalLabel; > lineChartRoot.verticalAxisRenderers.push(axisRend1); > series = new LineSeries(); > series.yField = strmList[i].SITE+"1"; > series.displayName = strmList[i].SITENAME +"- "+ KPI2Name; > series.id = strmList[i].SITE_ID;series.verticalAxis = lnrAxis; > [/as] > we have also tried an example we have created a line chart with two vertical > axis renderer at runtime. > the code is as follows > case 1 > [as] > <?xml version="1.0" encoding="utf-8"?> > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> > <mx:Script><![CDATA[ > import mx.events.IndexChangedEvent; > import mx.formatters.DateFormatter; > import mx.controls.Alert; > import mx.graphics.SolidColor; > import mx.charts.events.ChartItemEvent; > import mx.collections.ArrayCollection; > import mx.charts.HitData; > import mx.charts.events.ChartItemEvent; > import mx.charts.series.items.LineSeriesItem; > import mx.charts.ChartItem; > import mx.styles.StyleManager; > import mx.utils.ArrayUtil; > import mx.charts.AxisRenderer; > import mx.charts.LineChart; > import mx.charts.series.LineSeries; > > private var lnrAxis:LinearAxis; > private var axisRend:AxisRenderer; > [Bindable] > public var DECKER:ArrayCollection = new ArrayCollection([ > {date:"22-Aug-05", close:15700.59,open:15}, > {date:"23-Aug-05", close:16000.3,open:05}, > {date:"24-Aug-05", close:15000.71,open:20}, > {date:"25-Aug-05", close:15600.88,open:13}, > ]); > private function createChartSeries():void > { > var Linesrs:Array = new Array(); > var series1:LineSeries=new LineSeries(); > var series2:LineSeries=new LineSeries(); > series1.displayName = "close"; > series1.yField="close"; > series2.displayName = "open"; > series2.yField="open"; > > myChart.verticalAxisRenderers = []; > > lnrAxisKpi1.title = "left"; > axisRend = new AxisRenderer(); > axisRend.axis = lnrAxisKpi1; > axisRend.placement = "left"; > axisRend.axis = lnrAxisKpi1; > series1.verticalAxis = lnrAxisKpi1; > > > > lnrAxis = new LinearAxis(); > axisRend = new AxisRenderer(); > axisRend.axis = lnrAxis; > lnrAxis.title="righr"; > series2.verticalAxis = lnrAxis; > axisRend.placement = "right"; > axisRend.setStyle("verticalAxisTitleAlignment","vertical"); > myChart.verticalAxisRenderers.push(axisRend); > Linesrs.push( series1 ); > Linesrs.push( series2 ); > myChart.series = Linesrs; > myChart.dataProvider=DECKER; > } > ]]></mx:Script> > <mx:Panel title="Column Chart With Multiple Axes" > > <mx:LineChart id="myChart" showDataTips="true"> > <mx:horizontalAxis> > <mx:CategoryAxis id="h1" categoryField="date"/> > </mx:horizontalAxis> > <mx:verticalAxis> > <mx:LinearAxis id="lnrAxisKpi1" /> > </mx:verticalAxis> > > </mx:LineChart> > <mx:Button label="2 Series" click="createChartSeries()"/> > <mx:Legend dataProvider="{myChart}"/> > </mx:Panel> > </mx:Application> > [/as] > case 2: > when we change the axis > series1.displayName = "open" > series1.yField="open"; > series2.displayName = "close"; > series2.yField="close"; > i.e. when the first series has higher values (i.e. at left hand side) and > second series with lower values (i.e. at right) the resulting scaling is > proper ; > but when you interchange the series i.e. series with lower values at left and > higher at right the vertical axis show the same values on both the side s > which are incorrect . Please let us know if there is something wrong in the > code that we are using or if its a bug in the flex sdk. > Also it would be helpful if you could point us to any solutions if available > please find the attach document for more details and screenshots . -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira