2016-09-14 1 views
1

Как сохранить ширину полосы в соответствии с тем, что имеется более одного бара? Например, в this fiddle:Флот. Как сделать бархат постоянной ширины, даже если имеется только 1 данных.

var testing = $.plot($("#example-section15 #flotcontainer"), dataset, options);  
testing.getOptions().series.barWidth = 5; 
testing.draw(); 

Когда есть только одна точка данных ширина бар становится очень большой, хотя я уже пытаюсь установить barWidth и перерисовывать его снова, но она не работает.

Вот результат, когда Ther только одна точка данных:

enter image description here

+0

Набор мин и макс вариантов ось х. – Raidri

+0

@ Raidri Я могу использовать параметры max и min, но данные остаются на своем месте, ожидаемый результат: данные бара будут отображаться в центре диаграммы, если только одни данные и если несколько данных, оно должно быть в центре диаграммы. Если я использую параметры max и min, данные остаются в его положении (например, данные 1, поэтому он будет отображаться в данных 1, а другой пуст) –

ответ

1

Ширина Бар всегда последовательны в срок оси х единиц. Таким образом, вы должны убедиться, что общая ширина диаграммы в единицах оси x также фиксирована. Вы можете сделать это, установив опции min и max для оси x, чтобы разница всегда была одинаковой.

Если, например, у вас есть максимум 5 баров, общая ширина может составлять 6 единиц. Чтобы всегда центрировать существующие полосы на графике Установите min и max параметры так, чтобы центр баров находится в центре диаграммы:

  • Один бар (positon 1): Установите min: -2, max: 4
  • Два бара (в центре на 1,5): Установите min: -1.5, max: 4.5 (fiddle example)
  • ...
  • Пять баров (в центре на 3): Установите min: 0, max: 6
+0

Это то, что мне действительно нужно. Хах. Поэтому мне просто нужно установить параметры max и min в зависимости от того, сколько данных мне нужно показать. большое спасибо –

Смежные вопросы