как использовать аргумент легенды в scatterplot (), используя пакет 3 версии автомобиля - PullRequest
0 голосов
/ 18 октября 2018

Я новичок в R и пытаюсь разобраться с некоторыми примерами в превосходном "R in Action" Роберта Кабакоффа.

Он использует автомобильный пакет, чтобы создать диаграмму рассеяния.Пробуя следующий пример, я обнаружил, что получаю предупреждения, и сюжет не совпадает с тем, что в книге:

library(car)

scatterplot(mpg ~ wt | cyl, data=mtcars, lwd=2, span=0.75, 
            main="Scatter Plot of MPG vs. Weight by # Cylinders", 
            xlab="Weight of Car (lbs / 1000)", 
            ylab="Miles Per Gallon", legend.plot=TRUE, id.method="identify", 
            labels=row.names(mtcars), boxplot="xy")

После некоторых копаний я обнаружил, что автомобильный пакет обновился до версии 3,и книга использует версию 2. Очевидно, что ввод аргумента для большинства автомобильных функций полностью изменился.

Я нашел документацию для этого по адресу https://cran.r -project.org / web / packages / car /car.pdf , но я не мог полностью понять, как работают все аргументы.

Я был очень близок к тому, чтобы заставить график правильно работать со следующим кодом:

scatterplot(mpg ~ wt | cyl, data = mtcars, pch=c(1,2,3), 
            smooth = list(smoother=loessLine, span = .75, lty.smooth=1), 
            main = "Scatter Plot of MPG vs. Weight by # Cylinders", 
            xlab = "Weight of Car (lbs/1000)", ylab = "Miles per Gallon", 
            legend = c(title="cyl", coords="topleft"), 
            id = list(method="identify"),
            showlabels = names(row.names(mtcars)), regLine=c(method=lm, lty=1))

Но я не могу полностью следовать тому, как использовать новые аргументы, особенно легенду.Похоже, я не могу нарисовать легенду по координатам, кажется, она работает, только если я использую аргументы типа coords="topleft" или coords="bottom".

Может кто-нибудь объяснить, как использовать аргумент легенды вscatterplot() в пакете автомобиля версии 3?В частности, как изобразить его в определенных координатах и ​​за пределами области построения?

Если кто-то может указать мне учебник, который не является версией 2, это также будет полезно.

1 Ответ

0 голосов
/ 18 октября 2018

В общем, я считаю ggplot намного проще, чем базовые plot функции.Тем не менее, вам необходимо установить переменную cyl как фактор.

ggplot(data = mtcars, aes(x = wt, y = mpg, color = as.factor(cyl), shape = as.factor(cyl))) +
 geom_point() + # plots the scatter plot
 geom_smooth(method = "lm", se = F) + # plots the linear model
 geom_smooth(se = F) + # plots the loess model
 theme_minimal() # changes some of the formatting

enter image description here

Я также настоятельно рекомендую R для науки о данных Хэдли Уикхэма (http://r4ds.had.co.nz/) для начала работы в R. И это бесплатно!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...