Как перевернуть ось Y в AreaChart

Я использую библиотеку Google Chart Tools (она же Visualization) 1.1 с GWT для отображения AreaChart, и я хотел бы знать, как перевернуть ось Y? Когда вы устанавливаете параметры, есть

setReverseAxis(boolean)
, но этот переворачивает ось x. Я не нахожу, как установить ось Y.

Спасибо за помощь.


person Michaël    schedule 06.12.2010    source источник


Ответы (1)


Текущая версия Google Visualization API, которая используется в GWT Visualization 1.1.1, не поддерживает все доступные функции. Пока Google не выпустит новую версию своего API для GWT, я думаю, что возможным обходным путем является расширение класса AreaChart.Options путем добавления нового собственного метода, подобного этому (я не пробовал, но он должен работать, если версия, загруженная viz API 1.1.1 уже поддерживает эту опцию):

/**
 * Change the vertical alignment.
 * @param align possible values : -1 or 1
 */
public native final void setVerticalAlignment(int align) /*-{
    this.vAxis.direction = align;
}-*/;

EDIT: Немного покопавшись в API, я обнаружил, что в corechart.Options есть метод для указания свойств оси:

Options options = AreaChart.createOptions();
AxisOptions verticalOptions = AxisOptions.create();
verticalOptions.setDirection(-1);
options.setVAxisOptions(verticalOptions);
...
... 
AreaChart area = new AreaChart(data, options);
person Naoj    schedule 02.02.2011
comment
Как расширить класс AreaChart.Options? - person Michaël; 02.02.2011
comment
Я отредактировал свой ответ. Существует два класса AreaChart, один из которых устарел и не дает возможности инвертировать yAxis... - person Naoj; 02.02.2011
comment
Большое спасибо за ответ. Я использовал визуализацию GWT 1.1.0, которая не реализует возможность реверсирования yAxis, поэтому я перешел на 1.1.1 и добавил ваш код. - person Michaël; 02.02.2011