Как разместить несколько графиков на одном графике с помощью Ggvis в R
В этой статье мы рассмотрим подход к размещению нескольких графиков на одном графике с помощью ggvis на языке программирования R.
Библиотека ggplot2 в R используется для графического представления предоставленных данных. Пакет можно скачать и установить в рабочее пространство с помощью следующей команды:
install.packages("ggplot2")
Фрейм данных изначально создается с использованием метода data.frame(). Точки данных создаются во фрейме данных. Фрейм данных затем подвергается операциям ggvis с использованием оператора канала. Метод ggvis используется для запуска графического окна ggvis. Метод ggvis имеет следующий синтаксис:
ggvis( data , mp1, mp2.,)
Arguments :
- data – The dataset to plot
- mp1, mp2,.. – The map variables to plot
Метод layer_paths() можно использовать для добавления слоя к существующему графику ggvis. Он используется для представления заданных точек в виде отрезка на графике.
R
# installing the required packages library ( "ggplot2" ) library ( "ggvis" ) # creating data frame1 x_pos = 1:10 y_pos = x_pos^2 df1 = data.frame (x_pos,y_pos) print ( "Data Frame1" ) print (df1) # plotting the ggvis plot1 df1 %>% ggvis (~x_pos,~y_pos) %>% layer_paths () |
Выход
[1] "Data Frame1" x_pos y_pos 1 1 1 2 2 4 3 3 9 4 4 16 5 5 25 6 6 36 7 7 49 8 8 64 9 9 81 10 10 100
Другой график строится с помощью метода ggvis() между точками x и log x.
R
# installing the required packages library ( "ggplot2" ) library ( "ggvis" ) # creating data frame1 x_pos = 1:10 y_pos_2 = log (x_pos) df2 = data.frame (x_pos,y_pos_2) print ( "Data Frame2" ) print (df2) df2 %>% ggvis (~x_pos,~y_pos_2) %>% layer_paths () |
Выход
[1] "Data Frame2" x_pos y_pos_2 1 1 0.0000000 2 2 0.6931472 3 3 1.0986123 4 4 1.3862944 5 5 1.6094379 6 6 1.7917595 7 7 1.9459101 8 8 2.0794415 9 9 2.1972246 10 10 2.3025851
Метод layer_paths() можно использовать для добавления слоя к существующему графику. Его можно использовать для добавления сегментов линий к графику. В результате на один график можно добавить несколько сегментов линии.
layer_paths(x = , y = ), where x and y are x and y axes respectively
Приведенный ниже фрагмент кода иллюстрирует следующую процедуру объединения графиков в R. Первоначально создается фрейм данных с тремя столбцами, первый из которых содержит последовательность элементов от 1 до 10. Второй представляет собой выражение с квадратом столбца 1 и столбец 3, содержащий журнал значений первого столбца. Затем применяется метод ggvis() для построения графика с использованием первых двух столбцов фрейма данных. Строка добавляется с помощью метода layer_paths(). Затем можно добавить еще один слой в виде сегмента линии, используя первый и третий столбцы фрейма данных. Оба сегмента линии могут быть добавлены к одному и тому же графику.
R
# installing the required packages library ( "ggplot2" ) library ( "ggvis" ) # creating data frame1 x_pos = 1:10 y_pos = x_pos^2 y_pos_2 = log (x_pos) # creating the data frame df1 = data.frame (x_pos,y_pos, y_pos_2) print ( "Data Frame1" ) print (df1) # plotting the data for two different axes df1 %>% ggvis (~x_pos,~y_pos) %>% layer_paths ()%>% layer_paths (x = ~x_pos, y = ~y_pos_2) |
Выход
[1] "Data Frame1" > print(df1) x_pos y_pos y_pos_2 1 1 1 0.0000000 2 2 4 0.6931472 3 3 9 1.0986123 4 4 16 1.3862944 5 5 25 1.6094379 6 6 36 1.7917595 7 7 49 1.9459101 8 8 64 2.0794415 9 9 81 2.1972246 10 10 100 2.302585