When we look at the 1931 CIE chromaticity diagram, represented within the x y plane of xyY space, it renders white colors (or close to white) at points of luminance like the D65 point highlighted here with E.
But why is this the case? The point for D65 is supposed to be represented at x = 0.33, y = 0.33. Given the formula Y = 1 - x - y, wouldn't that mean Y is 0.34?
The sRGB correlate or xyY at 0.33,0.33,0.34 is 158.4182, 155.5676, 176.8565 according to every converter I found. This is a light brown and not the near-white seen in every 1931 chromaticity diagram.
It seems like I need to scale the Y to get the proper luminance value for every channel.
Using the Y = 1 - x - y formula, my diagram looks like this, a muted diagram:
What don't I understand?
Edit
Setting Y = 1 and the diagram looks like the below, better.
Edit
Now looks like the below.




The white point of CIE 1931 is not in
x=1/3,y=1/3, and white color is notx=1/3,y=1/3,Y = 1/3.According to Wikipedia:
The meaning of x=1/3, y=1/3 is different:
Important: D65 is not a "flat power spectrum".
Computer systems (PCs) uses sRGB color format.
In sRGB the color components are after gamma (in contrast to CIE 1931 which applies linear curve).
In xyY color space, x,y are the chromaticity and Y is the luminance.
x=0.31271,y=0.32902is the chromaticity without luminance and applies gray chromaticity.For white color use
Y = 1Lets compute sRGB of
x=0.3127,y=0.329,Y = 1:X = (Y/y)*x = 0.95046Y = 1Z = Y/y*(1-x-y) = 1.0891Rlinear 3.240600 -1.537200 -0.498600 X 0.99984Glinear = -0.968900 1.875800 0.041500 * Y = 1.00010Blinear 0.055700 -0.204000 1.057000 Z 1.00007Assume result is
1, 1, 1.Last stage is applying gamma for converting "Linear sRGB" to sRGB.
Since all values are 1, the result is sRGB =
1, 1, 1.We can repeat the computation for
Y = 0.2, and the result is Linear sRGB =0.2, 0.2, 0.2.Apply gamma:
gamma(u) = 1.055*u^(1/2.4) - 0.055foru > 0.00313081.055*0.2^(1/2.4) - 0.055 = 0.48453So sRGB =
0.48453, 0.48453, 0.48453.For converting to the standard range of [0, 255] (one byte per color channel), we need to scale by 255 and round the result: RGB888 =
124, 124, 124.