Диаграмма над линиями сетки в гистограмме AChartEngine

Возможно ли, что в гистограмме AChartEngine столбцы рисуются поверх линий сетки? Как это сделать? В настоящее время линии сетки рисуются поверх полос, что делает их немного неудобными.

Образец изображения прикреплен ниже. введите здесь описание изображения


person Fahad Abid Janjua    schedule 04.10.2012    source источник


Ответы (3)


Вы не можете изменить, какой из них рисуется первым, а какой следующим.

Однако вы можете изменить цвет линий сетки. Например, вы можете установить немного прозрачный цвет, чтобы он не выглядел так, как будто он нарисован над полосами.

person Dan D.    schedule 04.10.2012
comment
как установить цвета сетки?? - person Akhil Jain; 04.10.2013
comment
@ Дэн, нет ли возможности настройки в библиотеке, чтобы делать то, что задумано? - person dwbrito; 10.04.2014

Даже несмотря на то, что это не идеальный ответ, можно добиться такого поведения, внеся некоторые изменения в метод 'draw' класса XYChart.

Я не уверен, что это не вызовет никаких других проблем, но для меня это работает. В основном идея состоит в том, чтобы рисовать метки и сетку перед рисованием линии графика.

Я переместил весь код, начинающийся и заканчивающийся на:

        boolean showLabels = mRenderer.isShowLabels() && hasValues;
        ...
           drawText(canvas, mRenderer.getChartTitle(), x + size, top + height / 2, paint, 0);
         }
        }

до этой строки:

логическое значение hasValues ​​= false;

Кроме того, я прокомментировал часть && hasValues. Обратите внимание, что это определенно не надежный код, просто небольшой взлом.

person dwbrito    schedule 03.09.2014
comment
К сожалению, да, это вредит другим частям, таким как оси и пользовательские метки. Это можно решить, но с большей реорганизацией кода. - person Gábor; 11.10.2014

До версии AChartEngine 1.2.0 это невозможно. Вы не можете наносить линии сетки на диаграмму.

person user2431172    schedule 07.04.2014
comment
Это простое изложение очевидного факта, прямо отвечающее на заданный вопрос «да/нет», следовательно, в значительной степени является ответом. Если кто-то хочет оспорить его точность, сделайте это в комментарии, но не ложно помечайте его как отсутствие ответа. - person Chris Stratton; 09.04.2014