Гистограмма диапазона SSRS, другой цвет, когда нет данных - PullRequest
2 голосов
/ 08 марта 2019

Я хочу изменить цвет в «пробелах» в построенной мной диаграмме диапазона.

По сути, я пытаюсь создать визуализацию для персонала, чтобы увидеть наличие на отсеках.Красная маркировка означает, что отсек забронирован, я хотел, чтобы зеленый цвет находился между красными, чтобы выделить свободные отсеки.

Занятые отсеки:

Occupied Bays

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

Примером набора данных может быть:

Data Set Example

После

приведен снимок экранаВ своем выводе я добавил метки данных, чтобы посмотреть, не ошибаюсь ли я ... ОДНАКО Я также добавил тени к своим данным, и мои данные на самом деле все еще там, просто скрывая мои второстепенные бары ......

follow up data

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

enter image description here

Отслеживание 2

AВ дальнейшем я следовал за превосходным RangeChart.RDL

@iamdave. Я применил к нему свой набор данных, но теперь я получаю следующий вывод, я знаю, что, возможно, упускаю что-то простое, моя интуиция говоритя cust_id разделяет все встречи на отдельные линии, но у меня и первичная и вторичная ось установлена ​​на «DrawSideBySide = False»

Вот мои настройки .. New Set Up

вот мой последний вывод, если бы я мог просто сгруппировать все строки / столбцы / линии до 6 отсеков, было бы здорово.

enter image description here

1 Ответ

2 голосов
/ 08 марта 2019

Вы можете сделать это, добавив другой ряд данных, основанный на вашем исходном наборе данных, который потребует значительно меньше обработки, чем заполнение всех ваших пустых периодов, как предложено WEI_DBA.

  1. В свой набор данных добавьте новый столбец, который возвращает dense_rank() over (order by BAY) as BayID (order by должно быть желаемой меткой оси).
    1. Лучше всего это сделать в виде оператора select для переноса, чтобы сохранить оставшуюся логику запроса как есть.
  2. В вашей диаграмме дальности добавьте еще один элемент Values с тем же Category Field, что и текущий.
  3. Установите Top Value на 1, а Bottom Value на 0.
    1. Вы также можете установить для этого времени min и max вашего набора данных или начальный и конечный период вашего отчета, чтобы он охватывал только период, когда был доступен залив.
  4. Установите его для отображения на Secondary Axis для осей Vertical и Horizontal.
  5. Также выберите вариант Do not show this series in a legend.
  6. Настройте Вторичную Вертикальную Ось точно так же, как Вашу Первичную Вертикальную ось.
  7. Установите для вторичной горизонтальной оси Minimum и Maximum те же значения, что и для Bottom и Top выше.
  8. Скройте обе Вторичные Оси.
  9. Выберите новый элемент Values и в окне Properties разверните раздел CustomAttributes и измените DrawSideBySide на False.
  10. При необходимости измените порядок элементов Values в вашем окне Chart Data, чтобы убедиться, что новая линейка диапазонов отображается под вашими фактическими данными.
  11. Выберите оригинальный элемент Values и на боковой панели свойств перейдите к Data > DataPoint:
    1. Измените AxisLabel на =Fields!BAY.Value (Ваша метка оси).
    2. Измените Values > X на =Fields!BayID.Value (значение из пункта 1).

Теперь у вас должна быть диаграмма диапазона, которая отображает ваши данные поверх сплошной полосы, которую вы можете установить на любой нужный вам цвет:

...