Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在shinobi中使用多个BarSeries时在条之间填充_Android_Shinobi - Fatal编程技术网

Android 在shinobi中使用多个BarSeries时在条之间填充

Android 在shinobi中使用多个BarSeries时在条之间填充,android,shinobi,Android,Shinobi,作为后续操作,我仍然有这里描述的问题(条之间的大填充),但这次场景使用的是不同的系列。 我使用的是不同的系列,因为Shinobi有一个限制,如果你想让每一条都有不同的颜色,你需要使用不同的系列。看 我使用的代码如下所示: DataAdapter<Integer, Integer> dataAdapter3 = new SimpleDataAdapter<Integer, Integer>(); dataAdapter3.add(new Da

作为后续操作,我仍然有这里描述的问题(条之间的大填充),但这次场景使用的是不同的系列。 我使用的是不同的系列,因为Shinobi有一个限制,如果你想让每一条都有不同的颜色,你需要使用不同的系列。看

我使用的代码如下所示:

        DataAdapter<Integer, Integer> dataAdapter3 = new SimpleDataAdapter<Integer, Integer>();
        dataAdapter3.add(new DataPoint<Integer, Integer>(3, 3));
        BarSeries ls3 = new BarSeries();
        ls3.setDataAdapter(dataAdapter3);
        BarSeriesStyle bss3 = ls3.getStyle();
        bss3.setAreaColor(Color.CYAN);

        DataAdapter<Integer, Integer> dataAdapter2 = new SimpleDataAdapter<Integer, Integer>();
        dataAdapter2.add(new DataPoint<Integer, Integer>(12, 2));
        BarSeries ls2 = new BarSeries();
        ls2.setDataAdapter(dataAdapter2);
        BarSeriesStyle bss2 = ls2.getStyle();
        bss2.setAreaColor(Color.GREEN);

        DataAdapter<Integer, Integer> dataAdapter1 = new SimpleDataAdapter<Integer, Integer>();
        dataAdapter1.add(new DataPoint<Integer, Integer>(1, 1));
        BarSeries ls1 = new BarSeries();
        ls1.setDataAdapter(dataAdapter1);
        BarSeriesStyle bss1 = ls1.getStyle();
        bss1.setAreaColor(Color.BLUE);

        DataAdapter<Integer, Integer> dataAdapter0 = new SimpleDataAdapter<Integer, Integer>();
        dataAdapter0.add(new DataPoint<Integer, Integer>(15, 0));
        BarSeries ls0 = new BarSeries();
        ls0.setDataAdapter(dataAdapter0);
        BarSeriesStyle bss0 = ls0.getStyle();
        bss0.setAreaColor(Color.YELLOW);

        NumberAxis xAxis = new NumberAxis();
        chart.setXAxis(xAxis);
        NumberAxis yAxis = new NumberAxis();
        chart.setYAxis(yAxis);
        yAxis.getStyle().setInterSeriesSetPadding(0.0f);
        yAxis.getStyle().setInterSeriesPadding(0.0f);

        chart.addSeries(ls3);
        chart.addSeries(ls2);
        chart.addSeries(ls1);
        chart.addSeries(ls0);
DataAdapter dataAdapter3=新的SimpleDataAdapter();
添加(新的数据点(3,3));
BarSeries ls3=新的BarSeries();
ls3.setDataAdapter(dataAdapter3);
BarSeriesStyle bss3=ls3.getStyle();
bss3.setAreaColor(颜色为青色);
DataAdapter dataAdapter2=新的SimpleDataAdapter();
添加(新的数据点(12,2));
BarSeries ls2=新的BarSeries();
ls2.setDataAdapter(dataAdapter2);
BarSeriesStyle bss2=ls2.getStyle();
bss2.setAreaColor(颜色为绿色);
DataAdapter dataAdapter1=新的SimpleDataAdapter();
添加(新的数据点(1,1));
BarSeries ls1=新的BarSeries();
ls1.setDataAdapter(dataAdapter1);
BarSeriesStyle bss1=ls1.getStyle();
bss1.setAreaColor(颜色:蓝色);
DataAdapter dataAdapter0=新的SimpleDataAdapter();
添加(新的数据点(15,0));
BarSeries ls0=新的BarSeries();
ls0.setDataAdapter(dataAdapter0);
BarSeriesStyle bss0=ls0.getStyle();
bss0.setAreaColor(颜色:黄色);
NumberAxis xAxis=新NumberAxis();
图表.setXAxis(xAxis);
NumberAxis yAxis=新的NumberAxis();
图表.设置坐标轴(坐标轴);
yAxis.getStyle().setInterriessetAdding(0.0f);
yAxis.getStyle().setSpading(0.0f);
图表.增补系列(ls3);
图表.增补系列(ls2);
图表.增补系列(ls1);
图表.添加系列(ls0);
结果:


另一方面,请注意,条形图在Y轴上没有对齐到正确的值(0->0.8,1->1.2,2->1.8,3->2.7)

我运行了您的代码,得到了完全相同的输出。解决方案是将每个条形图系列的堆栈id设置为相等。例如: ls3.setStackId(1); ls2.setStackId(1)

这应该行得通。 谢谢 凯

免责声明:我为ShinobiControl工作