0

我使用 AnyChart/AnyMap 系统为我的站点呈现自定义地图,当前版本为 6.0.11。我们正在显示一张美国地图,该地图分为多个区域,每个区域都根据调色板分配了一种颜色。所有这些都很好,但是,我们在图表底部还有一个图例,它应该使用与系列数据相同的颜色。由于某种原因,这些<item>元素似乎忽略了我手动分配的任何颜色,也不尊重<icon color="%Color"...>标签。以下是特别与图例相关的 XML 片段,基于http://anychart.com/products/anychart/docs/xmlReference/index.html中指定的 API :

<anychart>
    <charts>
        <chart name="United States" plot_type="Map" template="state_template">
        <data_plot_settings>
            <map_series id_column="REGION_NAME" source="usa/country/states.amap">
            ...
            <chart_settings>
                <legend align="Center" align_by="DataPlot" enabled="True" ignore_auto_item="True" inside_dataplot="False" padding="5" position="Bottom">
                    <rows_padding><![CDATA[1]]></rows_padding>
                <format><![CDATA[{%Icon} {%Name} - 420{numDecimals:0,trailingZeros:0,decimalSeparator:,thousandsSeparator:}]]></format>
                <title enabled="False" />
                <icon color="%Color" series_type="Marker" type="SeriesIcon" />
                <items>
                    <item series="New England" source="Series">
                        <icon color="#E5E5E5" />
                    </item>
                    <item series="Middle Atlantic" source="Series">
                        <icon color="#E2D4D4" />
                    </item>
                    <item series="West South Central" source="Series">
                        <icon color="#DEE2D4" />
                    </item>
                    <item series="Mountain" source="Series">
                        <icon color="#DED4E2" />
                    </item>
                    <item series="Pacific" source="Series">
                        <icon color="#E2DBD4" />
                    </item>
                    <item series="East North Central" source="Series">
                        <icon color="#F4E0C3" />
                    </item>
                    <item series="West North Central" source="Series">
                        <icon color="#F2F1CE" />
                    </item>
                    <item series="South Atlantic" source="Series">
                        <icon color="#D4DCE2" />
                    </item>
                    <item series="East South Central" source="Series">
                        <icon color="#C6E5E1" />
                    </item>
                </items>
            </legend>
            </chart_settings>
        </chart>
    </charts>
</anychart>

似乎我在图标中放什么颜色或什么格式都没有关系(它应该接受像“red”这样的字符串和像 RGB(255, 0 ,0) 和 #FF0000 这样的格式),它总是呈现同一组颜色。我可以完全省略该部分,但它仍然不起作用。在相关的说明中,如果我将ignore_auto_item参数更改为 False,或者完全删除它,整个应用程序就会崩溃。

这是最后的手段,因为 AnyCharts 的傻瓜没有响应技术支持请求,他们的销售人员将我重定向到他的一个朋友,他想向我收取 150 美元/小时的费用。他们声称我的 XML 中的某些内容已损坏,但根据他们的 API 文档,我的 XML 非常好。任何建议将不胜感激。

我应该注意,我正在使用他们系统附带的 AnyChartsFlex SWC,通过自定义 Flex 应用程序运行。这个应用程序所做的只是提供一个包装器,其中包含我网站的用户需要的附加功能,并且不会以任何有意义的方式与实际图表本身混淆(只是添加几个事件侦听器),也不会在获取 XML 之前触及它到他们的图书馆进行渲染,并且完美地工作。

4

1 回答 1

1

我已经确认这是 AnyMaps 软件包中的一个错误。一个临时解决方案是为数据中的每个系列项目添加您想要的确切颜色,即:

<series name="New England" palette="divisionColorPaletteNE" type="MapRegions" color="#E5E5E5">

当我这样做时,图例最终使用了正确的颜色。因此,虽然这解决了我的直接问题,但为特定图例项设置图标颜色根本不起作用,使用 %Color 关键字为图例中的所有图标设置全局颜色也不起作用。图例项目不尊重来自调色板的颜色。

我希望其他处理这个问题的人能从我的痛苦中得到利用。

于 2013-04-15T17:57:26.353 回答