2017-01-12 11 views
0

У меня есть сюжет, как это, что я хотел бы изменить:GNUPLOT эквивалент hexbin, высокая плотность рассеивания

enter image description here

Я хотел бы сделать это графики плотности, как показано ниже hexbin:

http://www.exegetic.biz/blog/wp-content/uploads/2013/05/hexbin-mass-height.png

, где каждый из цветов в первой фигуры может иметь свой собственный уникальный цветовой градиент Я не доволен hexbin АиР, так как она не позволяет логарифмические шкалы, как мне нужно на первом рисунке. Другим преимуществом этого биннинга является то, что я могу сделать инкапсулированный вывод постскриптума, поскольку EPS первого файла является большим & неприменимым.

Я видел графики плотности в pm3d, но делает это с более чем одного набора данных не имеет смысла (8 различных цветовых градиентов в правой части будет выглядеть плохо)

Как я могу сделать hexbin как в gnuplot?

+1

Вы не можете сделать это автоматически с Gnuplot, есть только запрос ожидающей особенности: https://sourceforge.net/p/gnuplot/feature-requests/329/ – Christoph

+0

Я не доволен гексагоном R, так как он не позволяет логарифмических масштабов: это так. используйте scale_x_log10 и scale_y_log10. – Henk

ответ

0

Per @Henk:

library(gridExtra) 
library(ggplot2) 

grid.arrange(
    ggplot(diamonds, aes(carat, price)) + geom_hex() + scale_y_continuous(name="identity", trans="identity"), 
    ggplot(diamonds, aes(carat, price)) + geom_hex() + scale_y_continuous(name="sqrt", trans="sqrt"), 
    ggplot(diamonds, aes(carat, price)) + geom_hex() + scale_y_continuous(name="log10", trans="log10"), 
    ggplot(diamonds, aes(carat, price)) + geom_hex() + scale_y_continuous(name="log2", trans="log2"), 
    ncol=1) 

enter image description here

+0

Вы могли бы предоставить минимальный рабочий пример, я не могу получить ваш совет для работы в R. Скажите, для двух столбцов? – con

+0

Я хочу сказать, что код, который вы указали, не работал. Зачем давать такой нерабочий ответ, а затем дать сопливый, грубый ответ, когда его попросят уточнить? вы на Stackoverflow, чтобы помочь или нет? – con