I need to vary the point color for a row of values based on the color in one column. The data:
# x y z
1, 3, 0
1, 5, 6
3, 5, 2
4, 5, 0
The color should be one value if the column is zero and a different color if the value in the third column is non-zero.
So, I'm assuming:
plot "./file.dat" u 1:2:3 with points palette
as found here: https://stackoverflow.com/a/4115001 will not quite work.
In the above example data, that gnuplot command provides three different colors instead of the two I'm looking for.
This is probably close to what you want:
set palette model RGB defined ( 0 'red', 1 'green' )
plot[0:5][0:6] "file.dat" u 1:2:( $3 == 0 ? 0 : 1 ) with points palette
You could go one step further and remove the "noise":
unset key
unset colorbox
plot[0:5][0:6] "file.dat" u 1:2:( $3 == 0 ? 0 : 1 ) with points pt 7 ps 3 palette
if only the differentiation between zero and non-zero matters.