Относительный размер маркеров на графиках Matlab

Я пытаюсь построить матрицу, в которой каждый элемент находится в одном из двух состояний. (ising model ..)

Теперь я хотел бы, чтобы одно состояние было цветным, а другое - белым. Это работает с использованием

[i,j] = find(S);
figure(gcf);
plothandle = scatter(i,j);
axis([0 nNodes+1 0 nNodes+1]);

, когда S удерживает вращения и одно состояние равно 0. (find возвращает матрицу только ненулевых элементов)

Чтобы получить полезный график, размеры маркеров должны быть 1x1 в ОТНОСИТЕЛЬНОМ координаты. Итак, если бы вся матрица S была бы в ненулевом состоянии, все было бы раскрашено.

Однако, похоже, что Matlab допускает только MarkerSizes в точках или дюймах. Как я мог это решить?

Одна из моих идей заключалась в том, что я узнаю размер точки осей, а затем могу легко вычислить, насколько большими должны быть мои маркеры. Затем мне пришлось бы создать функцию обратного вызова, если я хочу увеличить масштаб и так далее. Кроме того, я еще не нашел способа (без набора инструментов image acq.) Узнать абсолютный размер моих осей.

Чтобы уточнить, что я хочу: как я могу построить шахматную доску, используя матрицу с 1 для черного и 0 для белых полей?

6
задан janoliver 8 June 2011 в 16:51
поделиться