Я считаю, что ваш лучший выбор - простая гистограмма. На мой взгляд, ключевым моментом здесь является то, что ценность бара будет представлена процентом собранной цели. Тем не менее, вы хотите, чтобы метка для каждого бара была фактической суммой денег, собранной до сих пор. Таким образом, ваш бар растет пропорционально, когда он приближается к цели, но на этикетке отображается собранная сумма.
В качестве альтернативы вы можете создать табликс, содержащий проценты, завершенные в качестве базы данных, и показать сумму, собранную до сих пор, против цели.
В комплекте скриншот образцов. Обратите внимание на следующее:
Я жестко закодировал имена цветов в запросе. Это отличный способ контролировать, как выглядят и чувствуют ваши диаграммы. Затем вы просто меняете цвет, чтобы представить выражение, равное значению поля цвета. Для изменения темных и темных цветов вы также можете установить цвет шрифта, поэтому, если у вас есть голубая полоска, вы можете иметь черный текст вместо белого или наоборот.
При использовании меток на гистограммах вам нужно закодировать минимальное значение для панели. Это обеспечит, что когда у вас есть что-то вроде Bucket 5, где вы находитесь на 5% от цели (относительно небольшой бар), но сумма большая ($ 124,243), что панель будет достаточно большой, чтобы содержать ярлык. В этом случае, если процент собранных составляет менее 15%, тогда размер бара будет составлять 15%.
Если у вас есть какие-либо вопросы, оставьте комментарий, и я сделаю все возможное, чтобы помочь. Запрос, который я использовал для создания набора данных, приведен ниже.
With CTE as (
Select 'Bucket 1' as bucket, 'blue' as color, 'white' as text_color, 50 as percent_total, 15236 as amount Union all
Select 'Bucket 2' as bucket, 'red' as color, 'white' as text_color, 33 as percent_total, 24685 as amount Union all
Select 'Bucket 3' as bucket, 'green' as color, 'black' as text_color, 67 as percent_total, 41457 as amount Union all
Select 'Bucket 4' as bucket, 'purple' as color, 'white' as text_color, 95 as percent_total, 32493 as amount Union all
Select 'Bucket 5' as bucket, 'black' as color, 'white' as text_color, 5 as percent_total, 124243 as amount
)
Select CTE.*
, CAST(amount as float)/(CAST(percent_total as float)/100.00) as Goal
From CTE
Order by Bucket desc
Edited на основе Комментарии
Если вы хотите, чтобы все ведра с остатком на одной строке, то вы можете выполнить, что следующее (хотя я не уверен, как вы бы обрабатывать маркировки суммы к отдельным ведрам).
Конечный результат
Запросов
Declare @Goal int = 500000;
With CTE as (
Select 'Bucket 5' as bucket, 'blue' as color, 'white' as text_color, 15236 as amount Union all
Select 'Bucket 4' as bucket, 'red' as color, 'white' as text_color, 24685 as amount Union all
Select 'Bucket 2' as bucket, 'green' as color, 'black' as text_color, 41457 as amount Union all
Select 'Bucket 3' as bucket, 'purple' as color, 'white' as text_color, 32493 as amount Union all
Select 'Bucket 1' as bucket, 'black' as color, 'white' as text_color, 124243 as amount
)
Select CTE.bucket
, CTE.color
, CTE.text_color
, CTE.amount
, CAST(CTE.amount as float)/CAST(@Goal as float) as percent_total
, 'white' as border_color
From CTE
Union All
Select 'Remaining' as bucket
, 'Transparent' as color
, 'Transparent' as text_color
, @Goal - SUM(CTE.amount) as amount
, CAST(@Goal - SUM(CTE.amount) as float)/CAST(@Goal as float) as percent_total
, 'black' as border_color
From CTE
Order by Bucket
установки параметров в Report Builder
Обратите внимание, что я динамически изменяемые т он цвет границы быть:
=Fields!border_color.value
и цвет бара быть:
=Fields!color.value
Извините, я понял, что в моем вопросе недостаточно ясности - мне нужен один баре, чтобы показать ведра, а затем пробел до цели. Это прекрасные примеры, кстати ... теперь, если бы я мог просто соединить все бары вместе и пометить их красиво за пределами виза, я бы все поставил! :) – CoderDonna
Вам нужно показать этикетки для вклада каждого ведра в общую сумму? –
я. Я понял, что, вероятно, могу сделать очень короткие ярлыки, такие как A, B, C и т. Д., А затем вывести текст за пределами фактического графика, который показывает, что означают эти вещи. – CoderDonna