Android Anychart Cartesian 为单个项目显示 2 个垂直条
Android Anychart Cartesian showing 2 vertical bars for a single item
我正在使用 android anychart 库使用我提供的数据绘制笛卡尔坐标。但是,笛卡尔坐标显示每个项目有 2 个垂直条,而不是只有一个条(如图中产品“Pe”所示)。我提供的图像更好地显示了我要解释的内容。这是代码..我已经在oncreate中初始化了anychartview。
Cartesian cartesian = AnyChart.column();
List<DataEntry> dataEntries = new ArrayList<>();
dataEntries.add(new ValueDataEntry("Tr", 10));
dataEntries.add(new ValueDataEntry("Fo", 20));
dataEntries.add(new ValueDataEntry("Ho", 30));
dataEntries.add(new ValueDataEntry("En", 40));
dataEntries.add(new ValueDataEntry("Ed", 50));
dataEntries.add(new ValueDataEntry("Ch", 60));
dataEntries.add(new ValueDataEntry("Ap", 70));
dataEntries.add(new ValueDataEntry("He", 80));
dataEntries.add(new ValueDataEntry("Pe", 90));
dataEntries.add(new ValueDataEntry("Ot", 10));
cartesian.data(dataEntries);
cartesian.title("Team Possession");
Column column = cartesian.column(dataEntries);
column.tooltip()
.titleFormat("{%X}")
.position(Position.CENTER_BOTTOM)
.anchor(Anchor.CENTER_BOTTOM)
.offsetX(0d)
.offsetY(5d)
.format("${%Value}{groupsSeparator: }");
cartesian.animation(true);
cartesian.title("Top 10 Cosmetic Products by Revenue");
cartesian.yScale().minimum(0d);
cartesian.yAxis(0).labels().format("${%Value}{groupsSeparator: }");
cartesian.tooltip().positionMode(TooltipPositionMode.POINT);
cartesian.interactivity().hoverMode(HoverMode.BY_X);
cartesian.xAxis(0).title("Product");
cartesian.yAxis(0).title("Revenue");
anyChartView.setChart(cartesian);
如何让它只显示一个栏?
发生这种情况是因为您应用了两次数据并且图表分别创建了两个系列。
在下面的行中,您将数据应用于图表。它会根据数据自动创建默认系列。
cartesian.data(dataEntries);
然后您手动创建一个系列。它创建了第二个系列。
Column column = cartesian.column(dataEntries);
要解决这个问题,您可以从代码中删除 cartesian.data(dataEntries);
行。
我正在使用 android anychart 库使用我提供的数据绘制笛卡尔坐标。但是,笛卡尔坐标显示每个项目有 2 个垂直条,而不是只有一个条(如图中产品“Pe”所示)。我提供的图像更好地显示了我要解释的内容。这是代码..我已经在oncreate中初始化了anychartview。
Cartesian cartesian = AnyChart.column();
List<DataEntry> dataEntries = new ArrayList<>();
dataEntries.add(new ValueDataEntry("Tr", 10));
dataEntries.add(new ValueDataEntry("Fo", 20));
dataEntries.add(new ValueDataEntry("Ho", 30));
dataEntries.add(new ValueDataEntry("En", 40));
dataEntries.add(new ValueDataEntry("Ed", 50));
dataEntries.add(new ValueDataEntry("Ch", 60));
dataEntries.add(new ValueDataEntry("Ap", 70));
dataEntries.add(new ValueDataEntry("He", 80));
dataEntries.add(new ValueDataEntry("Pe", 90));
dataEntries.add(new ValueDataEntry("Ot", 10));
cartesian.data(dataEntries);
cartesian.title("Team Possession");
Column column = cartesian.column(dataEntries);
column.tooltip()
.titleFormat("{%X}")
.position(Position.CENTER_BOTTOM)
.anchor(Anchor.CENTER_BOTTOM)
.offsetX(0d)
.offsetY(5d)
.format("${%Value}{groupsSeparator: }");
cartesian.animation(true);
cartesian.title("Top 10 Cosmetic Products by Revenue");
cartesian.yScale().minimum(0d);
cartesian.yAxis(0).labels().format("${%Value}{groupsSeparator: }");
cartesian.tooltip().positionMode(TooltipPositionMode.POINT);
cartesian.interactivity().hoverMode(HoverMode.BY_X);
cartesian.xAxis(0).title("Product");
cartesian.yAxis(0).title("Revenue");
anyChartView.setChart(cartesian);
如何让它只显示一个栏?
发生这种情况是因为您应用了两次数据并且图表分别创建了两个系列。 在下面的行中,您将数据应用于图表。它会根据数据自动创建默认系列。
cartesian.data(dataEntries);
然后您手动创建一个系列。它创建了第二个系列。
Column column = cartesian.column(dataEntries);
要解决这个问题,您可以从代码中删除 cartesian.data(dataEntries);
行。