Как добавить конкретную точку в легенду в ggvis в R?

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

В этой статье мы рассмотрим подход к добавлению определенной точки в легенду в пакете ggvis на языке программирования R.

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

install.packages("ggvis")

Метод ggvis в пакете ggvis используется для запуска графического окна ggvis. Метод ggvis имеет следующий синтаксис:

ggvis( data , mp1, mp2.,)

Arguments :

  • data – The dataset to plot
  • mp1, mp2,.. – The map variables to plot

Метод layer_points() в пакете ggvis используется для обозначения координат точек в виде точек. К этому методу можно добавить визуальные точки, такие как заливка, обводка и форма. Метод layer_points() имеет следующий синтаксис в R:

layer_points(vis, data, …)

Arguments :

  • vis – The ggvis object 
  • data – The data frame to be used for plotting the points
  • … – The additional attributes like the fill 

Метод scale_nominal() используется для добавления номинального масштаба к графику ggvis. Метод scale_nominal() снабжен внешними визуальными атрибутами, такими как заливка и диапазон. Атрибут диапазона поставляется с вектором цветов для обозначения точек данных.

scale_nominal (fill , range )

Это дополнительно поставляется с методом add_legend, который используется для добавления легенды к графику ggvis. Атрибут title можно использовать для добавления заголовка к сделанному графику.

add_legend ( fill , title)

Arguments : 

  • fill – The visual fill attribute 
  • title – The title to be given to the legend

Первоначально фрейм данных создается с использованием указанных точек данных в R. Два подмножества фрейма данных создаются с использованием методов subset(). Фрейм данных затем подвергается методу ggvis с использованием оператора канала. Затем точки отображаются с помощью точек, а затем точки представляются с использованием атрибута визуальной заливки. Легенда дополнена заголовком.

R




# installing the required libraries 
library(ggplot2)
library(ggvis)
  
# creating the data frame by defining 
# the x and y coordinates respectively
x_pos <- 1:10
  
# defining the y axis 
y_pos = 5:14
  
# creating the data frame
data_frame = data.frame(x_pos, y_pos )
print("Data Frame")
print(data_frame)
   
 # creating a subset of the dataset 
# where x_pos value is equivalent to 2
df1 <- subset(data_frame, x_pos == 2)
   
# creating a subset of the dataset 
# where x_pos value is equivalent to 2
df2 <- subset(data_frame, x_pos == 7)
   
# plotting the tick marks on the axes
data_frame %>%
ggvis(~x_pos,~y_pos) %>%
    
# marking the point labels for 
# the coordinates
layer_points() %>% 
  
# marking x = 2 with green color
layer_points(data = df1, fill = ~"x = 2") %>%
  
# marking x = 5 with green color
layer_points(data = df2, fill = ~"x = 5") %>%
scale_nominal("fill", range = c("green", "red") ) %>%
  
# creating solid color dots
add_legend("fill", title = "x coordinates" )

Выход

[1] "Data Frame"
> print(data_frame)
 x_pos y_pos
1      1     5
2      2     6
3      3     7
4      4     8
5      5     9
6      6    10
7      7    11
8      8    12
9      9    13
10    10    14

Приведенный ниже фрагмент кода иллюстрирует построение графика координат y фрейма данных, указанных точками данных y_pos. Точки помечены разными цветами и значениями атрибутов заливки соответственно.

R




# installing the required libraries
library(ggplot2)
library(ggvis)
  
# creating the data frame by defining
# the x and y coordinates respectively
x_pos < - 1: 10
  
# defining the y axis
y_pos = 5: 14
  
# creating the data frame
data_frame = data.frame(x_pos, y_pos)
print("Data Frame")
print(data_frame)
  
# creating a subset of the dataset where
# y_pos value is equivalent to 9
df1 < - subset(data_frame, y_pos == 9)
  
# creating a subset of the dataset where
# y_pos value is equivalent to 11
df2 < - subset(data_frame, y_pos == 11)
  
# creating a subset of the dataset where
# y_pos value is equivalent to 13
df3 < - subset(data_frame, y_pos == 13)
  
# plotting the tick marks on the axes
data_frame % >%
ggvis(~x_pos, ~y_pos) % >%
  
# marking the point labels for the
# coordinates
layer_points() % >%
  
# marking x = 2 with green color
layer_points(data=df1, fill=~"y = 9") % >%
layer_points(data=df2, fill=~"y = 11") % >%
layer_points(data=df3, fill=~"y = 13") % >%
scale_nominal("fill", range=c("green", "blue", "red")) % >%
  
# creating solid color dots
add_legend("fill", title="y coordinates")

Выход

[1] "Data Frame"
> print(data_frame)
x_pos y_pos
1      1     5
2      2     6
3      3     7
4      4     8
5      5     9
6      6    10
7      7    11
8      8    12
9      9    13
10    10    14