Flex 3 to Flash 4 - линейные графики отображаются неправильно - PullRequest
1 голос
/ 09 октября 2019

Я перенес приложение Flex 3 в приложение Flash 4 AIR. Один и тот же код ниже показывает графики по-разному в двух разных сценариях. Первое изображение является правильным, в то время как второе не отображается правильно. Кажется, вертикальные оси не обновляются динамически. Пожалуйста, дайте мне знать, если требуется какое-либо изменение, чтобы оба отображали графики.

    <mx:LineChart id="lcPatientChart" showDataTips="true" horizontalCenter="0" width="950">

    <mx:seriesFilters>
        <mx:Array/>
    </mx:seriesFilters>

    <mx:horizontalAxis>
        <mx:DateTimeAxis dataUnits="months" labelUnits="months" alignLabelsToUnits="false" labelFunction="formatDate"/>
    </mx:horizontalAxis>

    <mx:verticalAxisRenderers>
        <mx:AxisRenderer placement="left" axis="{v1}"/>
        <mx:AxisRenderer placement="right" axis="{v2}"/>
        <mx:AxisRenderer axis="{v3}" minorTickPlacement="none" tickPlacement="none" labelGap="0"
            showLabels="false" showLine="false" visible="false" includeInLayout="false"/>
        <mx:AxisRenderer axis="{v4}" minorTickPlacement="none" tickPlacement="none" labelGap="0"
            showLabels="false" showLine="false" visible="false" includeInLayout="false"/>
    </mx:verticalAxisRenderers>

    <mx:series>

        <mx:LineSeries id="lsCB4Abs" xField="assayDate" yField="cd4Abs"
            dataProvider="{_cd4ChartData}" displayName="CD4"
            fill="{scBlue}" stroke="{sBlue}" lineStroke="{lsBlue}" visible="true" >
            <mx:verticalAxis>
                <mx:LinearAxis id="v1" title="CD4 Count (Cells/mm3)"/>
            </mx:verticalAxis>
            <mx:itemRenderer>
                <mx:Component>
                    <mx:DiamondItemRenderer />
                </mx:Component>
            </mx:itemRenderer>
        </mx:LineSeries>

        <mx:LineSeries id="lsViralLoad" xField="assayDate" yField="viralLoad"
            dataProvider="{_vlChartData}" displayName="Viral Load"
            fill="{scGreen}" stroke="{sGreen}" lineStroke="{lsGreen}" visible="true">
            <mx:verticalAxis>
                <mx:LinearAxis id="v2" title="Viral Load (Copies/ml)"/>
            </mx:verticalAxis>
            <mx:itemRenderer>
                <mx:Component>
                    <mx:DiamondItemRenderer/>
                </mx:Component>
            </mx:itemRenderer>
        </mx:LineSeries>

        <mx:AreaSeries id="asTherapy" xField="therapyDate" yField="therapy" form="horizontal" displayName="Therapy"
            areaStroke="{sGreenTransparent}" areaFill="{scGreenTransparent}" dataProvider="{_therapyChartData}" visible="true">
            <mx:verticalAxis>
                <mx:LinearAxis id="v3"/>
            </mx:verticalAxis>
        </mx:AreaSeries>

        <component:CustomPlotSeries id="psSpecimen" dataProvider="{_specimenChartData}"   
            xField="specimenDate" yField="specimen" 
            displayName="Specimen" 
            fill="{scRedTransparent}" stroke="{sRedTransparent}" visible="true">
            <component:verticalAxis>
                <mx:LinearAxis id="v4" maximum="1.05" minimum="0"/>
            </component:verticalAxis>
            <component:itemRenderer >
                <mx:Component>
                    <mx:CircleItemRenderer />
                </mx:Component>
            </component:itemRenderer>
        </component:CustomPlotSeries>

    </mx:series>

</mx:LineChart>

enter image description here enter image description here

...