![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)

Наконец научился рисовать плотности цветами на диаграмме рассеяния. Не самый лучший вариант. Пока не могу (1) управлять цветом, (2) рисовать не две картинки, а одну (для этого, я так полагаю, надо применять что-то иное, а не ipairs, за который я схватился с горя, потому что он показался мне интуитивно-понятнее прочих). Попутно внезапно научился менять по желанию размер картинки и узнал, что такое data.frame. Как часто бывает, спасибо ishc за помощь в блужданиях в лабиринте апгрейда. Заранее благодарен тем, кто посоветует мне что-нибудь умное про рисование диаграмм рассеяния с плотностями и управление параметрами этих непослушных графиков. Хочется, чтобы было так же красиво, как у
kobak, но пока не можется. На самом деле, хотел написать не об этом, но о том -- в следующей, отдельной записи.
UPD: код был такой:
library(IDPmisc) ru.uik <- read.table('/home/**PATH**/ru.20111204.95228.txt', h=T) attach(ru.uik) turnout <- (invalid+valid)/electorate ER.vote <- ER/(invalid+valid) ergraph <- data.frame(turnout,ER.vote) png(file="/home/**PATH**/ru.20111204.ER~turn.png", width=600, height=600) ipairs(ergraph, pixs=1, zmax=NULL) dev.off()
no subject
Date: 2012-04-11 09:06 am (UTC)no subject
Date: 2012-04-11 09:22 am (UTC)У меня основная проблема в том, что я какие-то совсем простые вещи про эти графики и подготовку к ним не понимаю. Например, почему бы не использовать image? Но в image требуется каким-то образом предварительно посчитать z, а как его считать -- про то мне не ведомо. ipairs как-то считает z сам, но рисует только такие матрицы из картинок (потому что он ради того и задуман).
no subject
Date: 2012-04-11 10:37 am (UTC)library(IDPmisc)
x <- (invalid+valid)/electorate
y <- ER/(invalid+valid)
png(file="/home/**PATH**/ru.20111204.ER~turn.png", width=600, height=600)
plot(x, y, type="n")
Image(x, y, pix=1, zmax = NULL)
dev.off()
zmax при этом - это количество точек на ячейку матрицы плотностей: чем оно больше, тем плавнее переход от голубого к красному.
no subject
Date: 2012-04-11 10:41 am (UTC)no subject
Date: 2012-04-11 10:54 am (UTC)Для построения графика тут используется функция Image пакета IDPmisc (не путать с функцией image встроенной в ядро R, последняя с маленькой буквы)
no subject
Date: 2012-04-11 11:04 am (UTC)Попробовал с Image -- все получилось. А как управлять цветовой гаммой? Где-то про это можно прочесть?
no subject
Date: 2012-04-11 12:19 pm (UTC)?Image
Что-то я с ходу не понял как там выбирать цветовую палитру. За это отвечает параметр colramp, но у меня не вышло его примениь. Можно задатьфункцию плавности перехода цветов с помощью параметра ztransf. Например:
x <- rnorm(10000, mean=10)
y <- rnorm(10000, mean=10)
plot(x, y, type="n")
Image(x, y, pix=1, zmax = NULL, ztransf = function(x){x[x<1] <- 1; log2(x)})
no subject
Date: 2012-04-11 12:49 pm (UTC)Да, у меня colramp тоже не пошел. Надо, пожалуй, освоить ztransf.
no subject
Date: 2012-04-11 12:59 pm (UTC)no subject
Date: 2012-04-11 01:09 pm (UTC)no subject
Date: 2012-04-11 10:03 pm (UTC)Чуть не облысел, пока понял, что bg, в отличие от остальных цветовых параметров, работает только в par().
no subject
Date: 2012-04-11 10:51 am (UTC)