Это то, что я хотел бы сделать.

enter image description here

Мои текущие настройки параметров по оси:

  axes: {
  xaxis: {
    renderer: $.jqplot.CategoryAxisRenderer,
    ticks: xticks,  
  },
  yaxis: {
    min:0,
    tickOptions: {formatString: '%1.0f'}
  }
},

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

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

3
phz 29 Янв 2013 в 19:45

2 ответа

Лучший ответ

Вместо того, чтобы бороться с CategoryAxisRenderer, я бы выдумал это с числовым значением по умолчанию:

var chartData = [[1.5, 2.61], [2.5, 5.00], [3.5, 6.00]];

var plot2 = $.jqplot('chart1', [chartData], {
    seriesDefaults: {
        renderer: $.jqplot.BarRenderer,
        rendererOptions: {barWidth: 50}
    },
    axes: {
        xaxis: {
            ticks: [[0,"Midnight"],[1,"1 AM"],[2,"2 AM"],[3,"3 AM"],[4,"4 AM"]]
        },
        yaxis: {

        }
    }
});

Производит :

enter image description here

Скрипка здесь.

0
Mark 29 Янв 2013 в 17:38

Способ сделать это (не очень хороший способ, я думаю) это использовать CSS. Вы можете переместить блок xaxis влево благодаря jqplot-xaxis:

.jqplot-xaxis{
     left: -15px;
}

Если у кого-то есть лучший способ сделать это (в тиках), я бы хотел услышать об этом.

0
AnthonyLeGovic 29 Янв 2013 в 17:07