If you wish to use Markers something like this is an option
Names Default To Here(1);
pdt = New Table("Untitled",
Add Rows(2),
Compress File When Saved(1),
New Column("x", Numeric, "Continuous", Format("Best", 12), Set Values([10000, 50000])),
New Column("y", Numeric, "Continuous", Format("Best", 12), Set Values([3000, 70000])),
New Column("defect_images_count", Numeric, "Continuous", Format("Best", 12), Set Values([0, 1]))
);
xres = 1000;
yres = 1000;
xmin = -150000;
xmax = 150000;
ymin = -150000;
ymax = 150000;
nw = New Window("BSS_Wafermap",
gb = Graph Box(
framesize(xres, yres),
X Scale(xmin, xmax),
Y Scale(ymin, ymax),
Fill Color("lightgray");
Pen Color("Blue");
Circle({0, 0}, 150000, "FILL");
Marker Size(100);
xx = [];
yy = [];
For Each Row(pdt,
If(:defect_images_count > 0,
mstate = Color State("Red");
,
mstate = Color State("Black");
);
xx = Matrix(:x);
yy = Matrix(:y);
Marker(mstate, xx, yy);
);
)
);
But you could also use circles which might give more flexibility
nw = New Window("BSS_Wafermap",
gb = Graph Box(
framesize(xres, yres),
X Scale(xmin, xmax),
Y Scale(ymin, ymax),
Fill Color("lightgray");
Pen Color("Blue");
Circle({0, 0}, 150000, "FILL");
Marker Size(100);
xx = [];
yy = [];
For Each Row(pdt,
If(:defect_images_count > 0,
Fill Color("Red");
Pen Color("Blue");
,
Fill Color("Black");
Pen Color("Black");
);
Circle(Eval List({:x, :y}), 10000, "FILL")
);
)
);
And one more option could be to do most of this in graph builder, depending on what you are trying to achieve.
-Jarmo