Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.09.2018, 17:51
Аспирант
Отправить личное сообщение для WalterScott Посмотреть профиль Найти все сообщения от WalterScott
 
Регистрация: 10.05.2009
Сообщений: 57

jqplot, когда диаграмма одна она заполняет всё свободное место на графике
Делаю с помощью плагина jqplot горизонтальную гистограмму. Гистограмма отображает определённую величину в процентах.

Когда диаграмм несколько, они выглядят нормально.



Но когда диаграмма только одна, она растягивается на всю высоту и ширину графика, не оставляя места даже для лейбла.



Как можно скорректировать её размер?

Также не логично выглядит то, что когда значение измеряемой величины 20%, то ось x заканчивается на отметке 20. Было бы лучше, если бы по оси x всегда было минимум 100. То есть масштаб оставался примерно как на первом скриншоте.

Код такой:

$.jqplot.config.enablePlugins = true;
window.charts = {};

if ($('#summaryChart').length > 0) {
    var minimal_data_charts = [];
    for (var i = 0; i < minimal_data.length && i < 10; i++) {
        minimal_data_charts[i] = [minimal_data[i].persent, i+1, minimal_data[i].passenger];
    }

    $('#summaryChart').css('font-size', '15px');
    window.charts.summaryChart = $.jqplot('summaryChart', [
        minimal_data_charts], {
        seriesDefaults: {
            renderer:$.jqplot.BarRenderer,
            pointLabels: { show: true, location: 'e', edgeTolerance: -15 },
            shadowAngle: 135,
            rendererOptions: {
                barDirection: 'horizontal'
            }
        },
        axes: {
            yaxis: {
                renderer: $.jqplot.CategoryAxisRenderer
            }
        }
    });

}
Ответить с цитированием
  #2 (permalink)  
Старый 27.09.2018, 19:26
Аспирант
Отправить личное сообщение для WalterScott Посмотреть профиль Найти все сообщения от WalterScott
 
Регистрация: 10.05.2009
Сообщений: 57

Вот так получилось ужать по оси x:
axes: {
                xaxis: {
                    min: 0,
                    max: 110,
                    numberTicks: 12
                }


По оси y можно сжимать, добавляя маргин:
rendererOptions: {
        barDirection: 'horizontal',
        barMargin: 50
    }


только это надо будет делать динамически, когда нужно.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Название ячейки таблицы Questioner Общие вопросы Javascript 6 16.02.2011 09:58
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37