A yellow pixel is created by filtering out only the blue component. In a yellow pixel, 1/3 of the area is red and 1/3 is green. This means that within a yellow 2 x 2 area on the screen, there are 4 open red filters and 4 open green filters.
What would be the perceived color, if in that same 2 x 2 area, 2 red and 2 green filters are open, instead of 4 for each color?
If 2 pixels are yellow and 2 are black, that would be a total of 4 open filters. The resulting color would look like 50% yellow (128, 128, 0 in RGB-terms). Of course only in an ideal case. In reality the backlight would bleed and the color would be a brighter, maybe 75% yellow.
Now to the test:
I tested this theory by using the 50% unicode shading character U+2592 in the Windows command line and then comparing the resulting color to a painted color in Paint.
I chose black as the background and yellow, rgb(255, 255, 0) as the text color and filled the window with the medium shade character. As expected, the perceived color is almost exactly rgb(185, 170, 0) in Paint, which is about 70% the brightness of yellow and a little less green hue.
Repeating the procedure but spreading the 4 open filters over all 4 pixels (2 red and 2 green pixels) leads to pretty much the same result, which is good.
Now I try to reproduce orange:
I should get orange rgb(255, 128, 0) if I have 2 red and 2 yellow pixels in a 2 x 2 area and again using the 50% shade character. But this time, the resulting color is almost exactly rgb(255, 155, 0) in Paint.
The hue is much more on the green end this time. Why is that?
If I use the light shade character U+2591, which is 33% in the Windows command line font, I get exactly orange rgb(255, 128, 0). (By using 67% red and 33% yellow). Again, why do I need much more red and is there a formula that can approximately calculate how a shaded color would look like on a LCD monitor?