删除系列指示符/情节图例AndroidPlot

时间:2012-11-16 08:59:35

标签: android android-ui androidplot

我意识到AndroidPlot有一个论坛,但它不是最活跃的,所以我有机会在这里......

我正在尝试使用AndroidPlot库从XY绘图中删除系列指示符或绘图图例。我不想从剧情本身中删除这个系列,只是传说。

我已经在AndroidPlot示例中看到了它,但是由于文档有限,很难找到方法来执行删除legen的方法

4 个答案:

答案 0 :(得分:9)

好的,我有以下代码来执行此操作。这不是在最新版本上测试的,但希望仍然很好。

    if (!mKeyOn)
        mDynamicPlot.getLayoutManager()
                .remove(mDynamicPlot.getLegendWidget());
    if (!mDomainLabelOn)
        mDynamicPlot.getLayoutManager().remove(
                mDynamicPlot.getDomainLabelWidget());

看起来诀窍是获取layoutManager。

答案 1 :(得分:5)

查看代码,setLegendWidget仅更新LegendWidget的本地句柄,但不更新LayoutManager,这是在进行绘制时实际调用的内容。如果您实施Ifor(upvoted)建议,您应该取得成功,因为它直接与LayoutManager交互:

plot.getLayoutManager().remove(plot.getDomainLabelWidget());  

另一种选择是像这样隐藏传奇:

plot.getLegendWidget().setVisible(false);

提供(根据上述信息)您还没有尝试使用之前调用setLegendWidget()来替换/删除图例窗口小部件。

答案 2 :(得分:5)

你也可以使用Androidplot的XML Styling with Configurator并感谢反射删除情节图例,只需在XML布局文件中指定它的可见性,如下所示:

<com.androidplot.xy.XYPlot
...
    androidPlot.legendWidget.visible="false"
... />

如果不需要动态更改图例,我认为最好将这样的样式放在XML文件中。

答案 3 :(得分:1)

如果您想从图例小部件中删除仅一个(或特定)系列图例,只需使用:

yourSeriesFormater.setLegendIconEnabled(false);

这对我有用。