Я рисую линейную диаграмму с ежемесячными точками данных. Тем не менее, я хочу, чтобы шкала отображала только строки года. Пока все так просто. Однако, насколько я вижу, Highcharts всегда будет рисовать метки xAxis относительно тиков ... и мне нужно отображать их по центру между тиками. Есть ли какой-то простой способ сделать это, чтобы я пропал без вести, пожалуйста ...?Highcharts: ежегодные ярлыки xAxis, расположенные между отметками
ответ
Существует несколько вариантов xAxis, которые могут помочь вам делать то, что вы хотите.
http://api.highcharts.com/highcharts#xAxis.labels
Посмотрите на «Align», который определяет, будет ли метки слева или справа от клеща, а также «х», который позволяет указать й-смещение для метки из поставить галочку.
Вы пытались использовать размещение меток? http://api.highcharts.com/highcharts#xAxis.tickmarkPlacement
«Только для категорированных осей» ... – user1617662
Согласно моему пониманию, поведение вы хотите это:
http://jsfiddle.net/msjaiswal/U45Sr/2/
Позвольте мне сломать решение:
1. Ежемесячные данные Пунктов
Одна точка данных, соответствующий одному месяцу:
var data = [
[Date.UTC(2003,1),0.872],
[Date.UTC(2003,2),0.8714],
[Date.UTC(2003,3),0.8638],
[Date.UTC(2003,4),0.8567],
[Date.UTC(2003,5),0.8536],
[Date.UTC(2003,6),0.8564],
..
]
2. Шкала для отображения только годовых тиков
Использовать параметры диаграммы, как это:
xAxis: {
minRange : 30 * 24 * 3600 * 1000, //
minTickInterval: 12* 30 * 24 * 3600 * 1000 // An year
},
Проблема в том, что этикетка года находится под «Январем», и это не в центре года. – mirelon
Это может быть сделано с помощью обходного вручную регулируя расположение метки с помощью обратного вызова (названный по обе нагрузки и перерисовки). Пожалуйста, ознакомьтесь со скриптой, связанной с этим в моих комментариях к этому сообщению: Highcharts - how can I center labels on a datetime x-axis?
Нет простого, готового решения. Вы должны использовать события и соответственно менять метки. Вот пример решения, который также работает при изменении размера окна браузера (или иным образом заставляя схему перерисовать), даже тогда, когда изменяется количество клеща: http://jsfiddle.net/McNetic/eyyom2qg/3/
Он работает путем присоединения тот же обработчик события как load
и redraw
события:
$('#container').highcharts({
chart: {
events: {
load: fixLabels,
redraw: fixLabels
}
},
[...]
сам обработчик выглядит следующим образом:
var fixLabels = function() {
var labels = $('div.highcharts-xaxis-labels span', this.container).sort(function(a, b) {
return +parseInt($(a).css('left')) - +parseInt($(b).css('left'));
});
labels.css('margin-left',
(parseInt($(labels.get(1)).css('left')) - parseInt($(labels.get(0)).css('left')))/2
);
$(labels.get(this.xAxis[0].tickPositions.length - 1)).remove();
};
В основном, это работает так:
- Получите все существующие ярлыки (при перерисовании, включая новые). 2. Сортировка по свойствам css 'left' (они не отсортированы таким образом после некоторой перерисовки)
- Рассчитать смещение между двумя первыми ярлыками (смещение одинаково для всех меток)
- Установите половину смещения в качестве поля - слева от всех меток, эффективно смещая их на половину смещения вправо.
- Снимите самую правую этикетку (перемещенную вне диаграммы, иногда частично видимую).
- 1. Какие мои ярлыки xAxis смещены?
- 2. Highcharts xAxis
- 3. Линейная диаграмма Highcharts - Выделите ярлыки xAxis при наведении курсора
- 4. Highcharts xAxis показывает ярлыки от разворота на буровом доске
- 5. Highcharts: Как исправить ярлыки сверху, когда вращение xAxis составляет 90 °?
- 6. Почему ярлыки xAxis на моем графике Highcharts так странно расположены?
- 7. highcharts xAxis плотность
- 8. Как настроить xaxis highcharts
- 9. Highcharts несколько точек данных между xAxis
- 10. Линия диаграммы Highcharts XAxis Заказать
- 11. Highcharts предотвращает использование ярлыков xAxis
- 12. HighCharts - show xaxis title
- 13. Highcharts Timeline xAxis
- 14. Highcharts: XAxis этикетки неуместны
- 15. highcharts hide xAxis
- 16. Динамические xAxis Highcharts
- 17. HighCharts XAxis логарифмический тип
- 18. изменить Xaxis в highcharts
- 19. Highcharts XAxis несколько цветов
- 20. Highcharts xaxis datetime zoom
- 21. Как отформатировать xAxis Highcharts
- 22. Highcharts XAxis pointStart выпуск
- 23. Highcharts чередующиеся сдвоенные XAxis
- 24. Комбинат xAxis Highcharts
- 25. Highcharts custom xAxis label
- 26. Настроить Highcharts xaxis label
- 27. Динамически показывать ярлыки на xAxis
- 28. Высококачественные ярлыки xAxis не поворачиваются автоматически
- 29. Как показать/скрыть ярлыки, настраиваемые в highcharts
- 30. highcharts xaxis datetime label with minor tick
Я делаю это уже. Однако данные динамичны и по мере того, как промежутки между тиками расширяются, ярлыки выглядят все более и более невероятно приклеенными к тикам ... Я не знаю, могу ли я получить количество тиков, чтобы я мог вычислить расстояние между ними и установить смещение x с выравниванием по центру на лету ... – user1617662