Я пытаюсь создать диаграмму выстрела из баскетбола, и я пришел, чтобы насладиться видом графика решетчатой диаграммы, но мне кажется, что я не могу совмещать (или, поместив поверх) его с помощью ggplot дизайн суда. Есть какой-либо способ сделать это? Или мне нужно в конечном итоге использовать суд в качестве растрового изображения в фоновом режиме (который уже дает мне возможность для угадывания и проверки координат изображения)?R: Возможно ли комбинировать графический график xy с ggplot?
Вот пример для кадра dat
данных
location_x location_y points
1 5.5 22.1 2
2 6.0 24.1 2
3 6.1 39.4 2
4 25.3 38.7 0
5 8.0 24.4 2
6 8.8 12.7 0
7 9.0 6.0 0
8 10.6 31.6 0
9 4.2 47.5 0
10 4.3 8.9 2
EDIT: Ниже мой код, благодаря помощи поста: Using both color and size attributes in Hexagon Binning (ggplot2). Линия geom_path - это то, что используется для привлечения суда. Ошибка, что я в настоящее время получаю:
Error: Don't know how to add o to a plot
dat = mod_shots[mod_shots$player_id == 398068, ]
lattice_plot = xyplot(location_x~location_y, data = dat, panel = function(x,y,...)
{
hbin = hexbin(dat$location_y, dat$location_x, xbins=40, IDs=TRUE)
mtrans = hexTapply(hbin, dat$points, sum, na.rm=TRUE)
cols = rev(heat.colors(7))
grid.hexagons(hbin, style='lattice',
minarea=0.1,maxarea=3,
border="NA",
pen=cols[mtrans+1])
})
ggplot() + geom_path(data = court_points,
aes(x = x, y = y, z = NULL, group = desc, linetype = dash),
color = "#000004") + lattice_plot
Небольшой, воспроизводимый пример делает этот вопрос гораздо лучше. – Gregor
@Gregor отредактировал – Agrosel
Лучше, все еще не воспроизводим. У нас нет данных 'mod_shots', поэтому у нас нет' dat' ... sharing 'dput (dat)' или (если это слишком велико) 'dput (капли (head (dat, 10))) 'сделает ваши данные доступными для копирования/вставки. – Gregor