Color distribution?
December 9, 2023 3:45 PM   Subscribe

I have 30-40 colored objects that I'd like to arrange in a grid that is pleasing to the eye, balanced but random, where no same-colored objects are placed next to one another, not in rainbow order. Is there anywhere I can plug in all the colors and dimensions, push a button, and get a nice distribution? Or some kind of formula I can use?
posted by acidic to Grab Bag (5 answers total) 6 users marked this as a favorite
 
I would lay it out. Count how many of each color, lay colors out by putting the most common color out 1st, somewhat evenly spaced, then the next. If you have the same number of each color, I might go in alphabetical order by name of color, for even distribution that wouldn't look too much like a pattern. So, instead of ROYBGV, Blue, Green, Orange, Red, Violet, Yellow.
posted by theora55 at 3:50 PM on December 9, 2023 [1 favorite]


This previous question may be of interest.
posted by teremala at 4:19 PM on December 9, 2023


When putting together a patchwork blanket, I first make the squares, check for standard size, then start laying them out on the bed from the center.
I may have warm colors in one box and cool colors in another.
I may have separation by boxes of red/pink, yellow/orange, green/turquoise and blue/violet.
I may have dark colors and light colors.
The ultimate goal is to avoid two adjoining nearly identical squares. By starting from the center I have greater flexibility in switching a square from an upper left to a lower right placement.

Then... walk away. Take a break. Come back and look at the placement on the bed from the corner or a different side.
Reshuffle some of the squares.
Nothing is perfect. This method will get close to a random effect.

I do like pulling the over-all look together with a common element, like a border or a tiny detail for each square.
posted by TrishaU at 4:35 PM on December 9, 2023 [5 favorites]


Sounds fun! would try this: pick four key objects fairly different colors. Place them at the corners of the square grid, then infill by approximating a dithered gradient fill as used in pixel art . The idea is a ribbon across each diagonal will be a dithered gradient between endpoints, and the strips along the edges will be gradients between adjacent corners.

You can in principle do this algorithmically but if you stare at some dithering pics and explanations you will do fine by hand.

At the end you will have some similar colors near each other, but also islands of color surrounded by unlikes, as in the linked example.
posted by SaltySalticid at 5:15 PM on December 9, 2023 [2 favorites]


Are these objects different sizes? Your mention of dimensions suggests that. Are these objects rectilinear? Blob shaped? Are some somewhat convex/concave so that some nesting might be done? I’d think that a constant spacing between them (say, 1 cm) would be a factor in eye-pleasing-ness. How are you specifying dimensions?

As for where… there are graph layout programs, such as Graphviz.
With only 40 objects, I’d place the largest, then the next largest, etc. Another criteriin might be to not have a large object on the edge, but more interior.
posted by at at 1:30 AM on December 10, 2023 [1 favorite]


« Older Is it OK/normal to be knocked like this by fellow...   |   Village cat adopted me, should we spend noisy NYE... Newer »

You are not logged in, either login or create an account to post comments