2014-03-22 2 views
1

Я хочу создать четыре платы на основе платы tictactoe, которую у меня есть. Однако все звучит не так, и у меня нет правильных результатов. Я хочу иметь 6 строк и 7 столбцов!Ошибка при рисовании прямоугольной доски для воспроизведения connect4 в R

par(pty="s") # square plot type 
x = rep(1:6, each = 6) 
y = rep(1:7, times = 7) 
symbols(x, y, squares=rep(1, times=42), 
     inches=FALSE, # match squares to axes 
     xlim=c(0,7), 
     ylim=c(8,0)) # flip y axis to match matrix format 
board = matrix(rep("E", times=42), nrow=6, ncol=7) 

И я получаю эту ошибку:

Error in xy.coords(x, y, xlab = deparse(substitute(x)), ylab = deparse(substitute(y))) : 
    'x' and 'y' lengths differ 

enter image description here

Вот код для TicTacToe и его совет, показанный позже:

par(pty="s") # square plot type 
x = rep(1:3, each = 3) 
y = rep(1:3, times = 3) 
symbols(x, y, squares=rep(1, times=9), 
     inches=FALSE, # match squares to axes 
     xlim=c(0,4), 
     ylim=c(4,0)) # flip y axis to match matrix format 
board = matrix(rep("E", times=9), nrow=3, ncol=3) 

enter image description here

После изменения линии 2 и 3 к следующему:

x = rep(1:6, each = 7); y = rep(1:7, times = 6) 

я получил следующий сюжет. Вы знаете, почему горизонтальные линии похожи? и не резкие, и они размыты? enter image description here

+0

изменения линий две и три к этому 'х = Rep (1: 6, каждый = 7); y = rep (1: 7, times = 6) ' – rawr

+0

@rawr спасибо, обновил вопрос. –

+0

@rawr, но я хочу 6 строк и 7 колос! –

ответ

1
par(pty="s") # square plot type 
x = rep(1:7, each = 6) 
y = rep(1:6, times = 7) 
symbols(x, y, squares = rep(1, times=42), 
     inches=FALSE, # match squares to axes 
     xlim=c(0,8), 
     ylim=c(8,0), 
     axes = FALSE, 
     xlab = '', ylab = '') # flip y axis to match matrix format 
board = matrix(rep("E", times=42), nrow = 6, ncol = 7) 

enter image description here

Вы можете добавить оси и клещами и этикетки назад, если вы хотите