【问题标题】:AChartEngine does not display the maximum chart value - Bar ChartAChartEngine 不显示最大图表值 - 条形图
【发布时间】:2013-02-09 13:45:04
【问题描述】:

我正在研究 Achart 引擎,我面临 2 个问题

问题 1)我面临的问题与此处displaying max chart values on Y axis的屏幕截图中发布的完全相同

2) 假设在 3 个条中,如果条中的一个为 0,例如中间一个,则条将不会被绘制并在两个条之间显示空白,但我不想显示一些空间。

关于我想要实现的问题:

问题 1)我的 Ymax 值为 50,我可以将 Y 最大值设置为 60,以便显示最大值并且不会剪切。但是现在发生的是它的显示 10,20,30,40,50 in Y 轴,但如果我设为 60,它会显示 20,40,60,但我希望它显示 10,20,30,40,50,60。

问题 2)如果中间条的值为 0 或任何其他绘制的条值为 0,那么我不想在那里显示空间或根本不绘制条。

请帮助我实现这一目标。

编辑:

屏幕截图:

我不能在这里发布屏幕截图缺乏声誉所以我在这里发布它请注意它

IMAGE

【问题讨论】:

  • 请张贴截图,因为我不明白你有什么和你需要什么。
  • @Dan 请看我的编辑

标签: android bar-chart achartengine


【解决方案1】:

只需将 Y 轴最大值设置为高于最大值即可。

必须显示值为零的条形图。如果没有要添加的值,请使用 MathHelper.NULL_VALUE

【讨论】:

  • 是的,这就是我告诉你的,如果我将值设置为 60,y 轴会显示 20,40,60 值,但我希望它显示 10,20,30,40,50,60 y轴
  • 如何添加 MathHelper.NULL_VALUE 以及在哪里添加?
  • 使用 renderer.setXLabels(10);
  • 您在添加 0 的地方添加 NULL_VALUE,而不是 0。
  • 我没明白这个可以请解释一下您在添加0的地方添加了NULL_VALUE,而不是0
【解决方案2】:

有两种方法可以解决这个问题。

其中一种方法是在渲染器中将边距颜色设置为透明

renderer.setMarginsColor(Color.argb(0x00, 0xff, 0x00, 0x00));

除非您的系列的值超出图表范围,否则此解决方案有效。您可以重新创建系列以使所有值都在范围内,或者选择解决方案 2。

解决方案 2 是将图表的最大 Y 值乘以 1.1,并将其设置为 Y 最大值

mRenderer.setYAxisMax(maxvalue*1.1);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-27
    • 1970-01-01
    相关资源
    最近更新 更多