Дорога вероятности графика / гексбин с разными размерами BINS

Это связано с другим вопросом: Увеличенная матрица весовой частоты .

У меня есть этот график (производится кодом ниже в R): multisample

#Set the number of bets and number of trials and % lines
numbet <- 36 
numtri <- 1000 
#Fill a matrix where the rows are the cumulative bets and the columns are the trials
xcum <- matrix(NA, nrow=numbet, ncol=numtri)
for (i in 1:numtri) {
x <- sample(c(0,1), numbet, prob=c(5/6,1/6), replace = TRUE)
xcum[,i] <- cumsum(x)/(1:numbet)
}
#Plot the trials as transparent lines so you can see the build up
matplot(xcum, type="l", xlab="Number of Trials", ylab="Relative Frequency", main="", col=rgb(0.01, 0.01, 0.01, 0.02), las=1)

Мне очень нравится, как этот график создан, и показывает более частые пути, чем более темные пути (но не понятно достаточно для печати презентации). То, что я хотел бы сделать, это создать какой-то гексбин или тепловой карту для чисел. Мы думаем об этом, кажется, что сюжет должен будет включить разные размеры бункеров (см. Мою обратно эскиз конверта):

binsketch

Мой вопрос тогда: Если я смоделирую миллион, используя код выше, как можно Я представляю его как тепломапа или гексбин, с разными размерами бункеров, как показано в эскизе?

, чтобы уточнить: я не хочу полагаться на прозрачность, чтобы показать редкость проб, проходящего через часть участка. Вместо этого я хотел бы обозначить редкость с жарой и показать общий путь как горячий (красный) и редкий путь как холодный (синий). Кроме того, я не думаю, что бункеры должны быть одинаковыми размерами, потому что первое испытание имеет только два места, где может быть путь, но последний имеет еще много. Следовательно, тот факт, что я выбрал изменяющийся шкала Bin, основываясь на этом факте. По сути, я считаю количество раз, когда путь проходит через ячейку (2 в COL 1, 3 в COL 2 и т. Д.), а затем окрашивая клетку на основе того, сколько раз его пропущено.

Обновление: у меня уже был участок, похожий на @andreie, но я не уверен, что это намного яснее, чем верхний участок. Это прерывная природа этого графа, что я не люблю (и почему я хочу какой-то тепломап). Я думаю, что, поскольку первый столбец имеет только два возможных значения, что не должен быть огромный визуальный разрыв между ними и т. Д. И т. Д. Следовательно, почему я предусматривал разные бункеры размером. Я все еще чувствую, что Binning Version лучше показывает большое количество образцов.

plot2

Обновление: это веб-сайт создает процедуру, чтобы построить тепловую карту:

для создания плотности (тепломапа) графика версии этого мы должны эффективно перечислить возникновение этих точек при каждом дискретно Изображение. Это делается путем установки сетки и подсчета количества раз, когда координата точки «падает» в каждый из отдельных пикселей «банки» в каждом месте в этой сетке.

Возможно, некоторые из информации на этом веб-сайте могут быть объединены с тем, что у нас уже есть?

Обновление: Я взял некоторые из того, что Андри написал с некоторыми из этого вопроса , чтобы прибыть на это довольно близко к тому, что я зачаровал: heatmap

numbet <- 20
numtri <- 100
prob=1/6
#Fill a matrix 
xcum <- matrix(NA, nrow=numtri, ncol=numbet+1)
for (i in 1:numtri) {
  x <- sample(c(0,1), numbet, prob=c(prob, 1-prob), replace = TRUE)
  xcum[i, ] <- c(i, cumsum(x)/cumsum(1:numbet))
}
colnames(xcum) <- c("trial", paste("bet", 1:numbet, sep=""))

mxcum <- reshape(data.frame(xcum), varying=1+1:numbet, 
  idvar="trial", v.names="outcome", direction="long", timevar="bet")

 #from the other question
 require(MASS)
dens <- kde2d(mxcum$bet, mxcum$outcome)
filled.contour(dens)

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

Обновление: Это похоже на другие участки здесь. Это не совсем правильно:

hexbin

plot(hexbin(x=mxcum$bet, y=mxcum$outcome))

Последняя попытка. Как указано выше: enter image description here

image(mxcum$bet, mxcum$outcome)

Это довольно хорошо. Мне просто хотел бы выглядеть как мой рисованный эскиз.

14
задан 14 revs 23 May 2017 в 12:30
поделиться