Как мне изобразить простую интерактивную модель в R, которая изменяется в ответ на изменения входных переменных?

#r #graph #modeling #interactive

#r #График #моделирование #интерактивная

Вопрос:

У меня есть простая математическая модель следующим образом:

 M = S1 * ((1 - (1-q1)^T)*(b1/c1)   (1-q1)^T)    S2 * ((1 - (1-q2)^T)*((B - b1)/c2)   (1-q2)^T)
  

И я присвоил значения всем этим переменным.

 S1 <- 100  
S2 <- 100   
T <- 30
q1 <- 0.4       
q2 <- 0.05     
B <- 50    
b1 <- 1:50    # I want to see how M changes as b1 increases 
c1 <- 100    
c2 <- 100   
  

Что я хочу сделать сейчас, так это создать интерактивный график, в котором я могу изменять переменные в модели (S1, S2, q1, q2 и т.д.) и обновлять график в режиме реального времени, чтобы я мог представить его аудитории, вместо того, чтобы повторно запускать код.

Есть ли способ сделать это в R?

Спасибо за вашу помощь.

Ответ №1:

manipulate Пакет позволит вам сделать именно это; манипулировать графиком функции с помощью ползунков.

введите описание изображения здесь

Я оставлю это на ваше усмотрение, чтобы вы сами написали код вашей конкретной модели.

Комментарии:

1. Я посмотрел на это, но, похоже, это может изменить только значения x и y. Итак, я хочу построить график M по оси y и b1 по оси x, но посмотрите, как меняется график, когда я изменяю S1, S2, q1, q2 и т.д.

2. Этот конкретный пример изменяет ограничение по оси x, но вы можете добавить ползунок для любого количества вещей, которые вам нравятся. Просто установите slider s для каждой из этих переменных с соответствующими диапазонами.