Работа с осями в R с использованием ggplot2

Опубликовано: 7 Января, 2023

Пакет ggplot2 — мощный и широко используемый пакет для графической визуализации. Его можно использовать для создания множества эстетических отображений на построенных графиках. Этот пакет широко доступен в R. Пакет можно загрузить и установить в рабочее пространство с помощью следующей команды:

install.packages("ggplot2")

Метод ggplot можно использовать для создания объекта ggplot. Графический объект используется для создания графиков путем предоставления данных и соответствующих точек. Данные могут быть нанесены на график с использованием как точек, так и линий.

Syntax : ggplot(data, aes = )

Arguments :

data – The data to be plotted
aes – The aesthetic mappings

Метод geom_point можно использовать для построения точек данных на существующей визуализации, которая была создана. Цвет был назначен на основе значений группировки, назначенных в col2 плоскости данных в следующем фрагменте кода. Это связано с тем, что существует три группы a, b и c, для обозначения значений, содержащихся в этих трех группах, используются три разных цвета. Эти параметры задаются в эстетических сопоставлениях, как обсуждалось выше в методе ggplot.

R




#installing the required libraries
library("ggplot2")
#creating a data frame
data_frame = data.frame(col1 = c(1,4,2,5,6,9,5,3,6,3),
                        col2 = c("a","b","a","c","b","b","b","a","c","a"),
                        col3 = c(3,2,4,2,1,4,8,6,4,2))
#creating the plot
#assigning groups based on col2 values
ggplot(data_frame, aes(col1, col3, colour=col2)) + geom_point()

Выход

Назначение меток осям

Метки осей x и y построенного графика можно изменить или настроить с помощью различных методов, доступных в пакете ggplot2. Компонент xlab, который можно добавить к построенному графику, используется для добавления пользовательского заголовка к оси X, и аналогичным образом метод ylab можно использовать для добавления пользовательской текстовой метки к оси Y соответственно.

Syntax : 

For x-axis : xlab(title of x-axis)

For y-axis : ylab(title of y-axis)

R




#creating the plot
#assigning groups based on col2 values
ggplot(data_frame, aes(col1, col3, colour=col2)) +
         geom_point()+
  xlab("X-axis") + ylab("Y-axis")

Выход

Аннотировать текст на графике

График, созданный с помощью метода ggplot2, также можно аннотировать различными текстовыми элементами, и можно указать их соответствующие позиции. Например, текстовая точка в любых соответствующих координатах x-cord и y-cord может быть использована для пометки определенным текстовым значением в следующем фрагменте кода, точка данных в местоположении 5,2 помечена именем « ПТ1». Метод annotate имеет следующий синтаксис.

Syntax : annotate(text, x=,y=,label=)

Arguments:

x-the x coordinate where the x is annotated

y-the y coordinate of the annotated text

label-the label to be assigned at these coordinates 

R




#creating the plot
#assigning groups based on col2 values
ggplot(data_frame, aes(col1, col3, colour=col2)) +
         geom_point() + 
  annotate("text", x = 5, y = 2, label = "pt1")

Выход

Аннотирование графика с нанесенной областью

График также может быть построен с прямоугольной или квадратной областью в зависимости от начальных и конечных координат x, а также начальных и конечных координат y. Чтобы построить прямоугольник или квадрат над этой областью. В зависимости от соответствующей области, которая заключена в нем. Тот же метод аннотирования можно использовать с первым параметром, указывающим «прямоугольник» вместо текста. Чтобы построить прямоугольник, мы можем использовать следующий синтаксис

Syntax : annotate(“rect”, xmin, xmax, ymin, ymax, alpha)

Arguments:

xmin-the starting x coordinate

xmax-the ending x coordinate

ymin-the starting y coordinate

ymax-the ending y coordinate

В следующем фрагменте кода прямоугольник строится, начиная с координат x и заканчивая значением 7 и координатами y от 1,5 до 4,5 соответственно.

R




#creating the plot
#assigning groups based on col2 values
#highlighting the rectangular based area 
ggplot(data_frame, aes(col1, col3, colour=col2)) +
         geom_point() + 
          annotate("rect", xmin = 2, xmax = 7, ymin = 1.5, 
                   ymax = 4.5, alpha = .5)

Выход

Установка ограничений по осям

График также можно настроить для отображения в определенном желаемом масштабе. Соответственно, точки данных отображаются в зависимости от масштаба, который использовался для графика. Метод xlim используется для установки элементов оси x, а метод ylim используется для определения границ оси y. У них есть следующее

Syntax : 

xlim(starting x value, ending x value_

ylim(starting y value, ending y value)

R




#creating the plot
#assigning groups based on col2 values
#highlighting the rectangular based area 
ggplot(data_frame, aes(col1, col3, colour=col2)) +
         geom_point() + 
         xlim(0,20)+
        ylim(0,15)

Выход

Изменение внешнего вида названий осей

График, построенный с помощью пакета ggplot2, также можно украсить и настроить, чтобы повысить удобочитаемость и сделать его более презентабельным. Например, заголовки осей могут быть выровнены по определенному углу и заданы определенным цветом. Например, в следующем фрагменте кода мы используем красный цвет для обозначения заголовка оси для оси x и оранжевый для обозначения оси y. - заголовок оси соответственно. Мы также увеличили размер, чтобы улучшить читаемость заголовка оси, и углы, под которыми эти тексты написаны, также были изменены. Это можно сделать с помощью метода темы. В R метод темы принимает различные аргументы для настройки внешнего вида указанного параметра. Метод темы имеет следующее

Syntax : theme(axis.title  = element_text(angle, size, color))

Arguments : 

axis.title – By default the parameter axis.title is used to modify the appearance of both axes. If we specify axis.title.x, the appearance of the x axis is modified. Otherwise, if we specify axis.title.y the appearance of the y axis is modified. 

angle – angle of placing the text at

size – size of the text 

color – color of the axis titles’ text 

R




#creating the plot
#assigning groups based on col2 values
#highlighting the rectangular based area 
ggplot(data_frame, aes(col1, col3, colour=col2)) +
         geom_point() + 
  theme(axis.title.x = element_text( angle = 90, size =20,
                                    color="red"))+
  theme(axis.title.y = element_text( angle = 270, 
                                    size =20, color="orange"))

Выход

Изменение внешнего вида меток осей

Метод темы также можно изменить, чтобы использовать для изменения внешнего вида меток осей, просто используя axes.text в качестве параметра в качестве первого аргумента этого метода. Цвет параметров и угол можно изменить и для меток осей.

R




#creating the plot
#assigning groups based on col2 values
#highlighting the rectangular based area 
ggplot(data_frame, aes(col1, col3, colour=col2)) + 
       geom_point() + 
        theme(axis.text = element_text( color="blue", angle = 90))

Выход :