Aggregation that includes non-matching items

Hi,

we use Elasticsearch to drive an ecommerce shop. The index consists of products, let's assume there are 100 products there is a field called "color". 50 products have the color red and 50 products have the color blue. I know want to build an aggregation that tells me the product count for all colors. The values of the aggregation will be: red:50 and blue:50. Now i filter for red products only. The aggregation value will now only provide red:50. Is there any way to still get the non-matching values for red:50 somehow in the query result?

Background: I want to use the aggregation as a filter that displays the filter criteria and the hit count per color value, but also in the case a specific color is selected

Thx