I would like to create a Voronoi tessellation inside a square of known dimensions. I know that I can plot a set of known seeds that will result in a set of cells with discrete areas; however, is it possible to find an unknown set of seeds that will result in cells of known areas?
For instance, if I have a square with an area of 100 square units, and I want to create 4 cells with respective areas of 50, 20, 20, and 10 square units, is there an algorithm that will produce a set of seeds that would result in cells of these areas when plotted?
I've been asked to describe exactly what I need and restrictions on how to get there. Here's an example that will produce a rough approximation of Figure 1 in this document, from the comments.
Suppose that I have a square 300 units by 300 units in which I would like to make a Voronoi tessellation to visualize a data set. In that tessellation, I'd like to have 8 cells with the following areas (in square units):
I plug these areas, possible along with the total area of 90,000 square units, into the Magic Voronoi Algorithm™, which could have several steps, and it gives me these points:
- A (110, 88)
- B (153, 63)
- C (183, 113)
- D (209, 185)
- E (89, 197)
- F (74, 138)
- G (113, 145)
- H (148, 158)
When I plot these points, it results in this diagram (I can't post images directly into questions yet, so feel free to edit this is you're able to do so).
The order and position of the cells don't matter, but I'd prefer something like this (irregular polygons, sort of like a kaleidoscope) rather than diagonal slices of a square like Henry suggested below. I guess my goal is to be able to see, at a glance, the sizes of these cells in relation to one another (e.g., G is smaller than D; or A, B, and C are all similar in size). Is there anything like this Magic Voronoi Algorithm™, or am I thinking too wishfully here?