jQuery данные/подписи оси Flot сверху графика

УСПОКОИТЕЛЬНЫЙ сервисы намного более просты использовать, чем , SOAP основывал (регулярные) сервисы. Причина этого состоит в том, что REST основан на нормальных Запросах HTTP, который позволяет намерению быть выведенным из типа выполненного запроса (ПОЛУЧИТЕ = retrive, POST = запись, УДАЛИТЕ =, удаляют, и т.д....), и является абсолютно не сохраняющим состояние. С другой стороны, Вы могли утверждать, что это менее гибко, поскольку это покончило с понятием конверта сообщения, который содержит контекст запроса.

, По моему опыту, SOAP был предпочтен для сервисов в предприятии, и REST был предпочтен для сервисов, которые представлены как общедоступные API.

инструменты With как WCF в платформе.NET это очень тривиально для реализации сервиса как REST или SOAP.

Некоторое соответствующее чтение:

12
задан Infinite Recursion 18 June 2014 в 15:22
поделиться

1 ответ

В одну сторону, а это не так Это особенно чисто и особенно не будет работать хорошо, если вы планируете показывать метки на осях x и y одновременно, это установить для параметра labelMargin в сетке сетку значение отрицательное значение.

var plot = $.plot(placeholder, data, {
    ...
    grid: { ..., labelMargin: -20, ... }
    ...
});

Вторая идея может заключаться в том, чтобы получить все div , которые имеют class = "tickLabel" , после того, как график был нарисован. А затем «вручную» измените их позиционирование CSS.

$("div.tickLabel").each(function(i,ele) {
    ele = $(ele);
    if (ele.css("text-align") == "center") { //x-axis
        ele.css("top", ele.position().top - 20); //move them up over graph
    } else {  //y-axis
        ele.css("left", ele.position().left + 20); //move them right over graph
    }
});

Конечно, здесь все еще есть некоторые проблемы, так как самые низкие значения меток на осях x и y будут перекрывать друг друга, а самые низкие / самые высокие значения меток на оси x и ось Y будет расположена на краях графика. Но с некоторой тонкой настройкой это может быть жизнеспособным решением.


Третья идея заключается в прямом использовании tickFormatter для меток на осях x и y. Это работает аналогично второй идее, но размещает их прямо там, где вы хотите, без заметного «мерцания метки» при изменении положения, которое может произойти с функцией во второй идее.

var plot = $.plot(placeholder, data, {
    ...
    xaxis: {
        ...,
        tickFormatter: function formatter(val, axis) {
           //return appropriately absolute positioned element
        }
    },
    ...
});

Как это tickFormatter ] может выглядеть лучше всего, если посмотреть на исходный код jQuery Flot , особенно на функцию measureLabels (это дает вам представление о том, как сам Flot позиционирует метки меток) и средство форматирования меток по умолчанию который выглядит как

function (v, axis) {
    return v.toFixed(axis.tickDecimals);
};
20
ответ дан 2 December 2019 в 18:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: