ShinyLive ਨਾਲ ਗੈਰ-ਕੋਡਰਾਂ ਲਈ ਇੰਟਰਐਕਟਿਵਿਟੀ ਨੂੰ ਵਧਾਉਣਾ
GitHub ਪੰਨਿਆਂ 'ਤੇ ਡੇਟਾਸੈਟਾਂ ਅਤੇ ਸਹਾਇਕ ਫੰਕਸ਼ਨਾਂ ਦੀ ਮੇਜ਼ਬਾਨੀ ਕਰਨਾ ਸਰੋਤਾਂ ਨੂੰ ਪਹੁੰਚਯੋਗ ਬਣਾਉਣ ਦਾ ਇੱਕ ਵਧੀਆ ਤਰੀਕਾ ਹੈ। R ਨਾਲ ਕੰਮ ਕਰਨ ਵਾਲੇ ਡਿਵੈਲਪਰਾਂ ਲਈ, ਇੰਟਰਐਕਟੀਵਿਟੀ ਦਾ ਏਕੀਕਰਣ ਉਪਭੋਗਤਾ ਦੀ ਸ਼ਮੂਲੀਅਤ ਨੂੰ ਹੋਰ ਵਧਾ ਸਕਦਾ ਹੈ, ਖਾਸ ਤੌਰ 'ਤੇ ਤੁਹਾਡੇ ਡੇਟਾ ਦੀ ਪੜਚੋਲ ਕਰਨ ਵਾਲੇ ਗੈਰ-ਕੋਡਰਾਂ ਲਈ। ShinyLive ਅਜਿਹੀ ਇੰਟਰਐਕਟੀਵਿਟੀ ਨੂੰ ਸਿੱਧੇ pkgdown ਵੈੱਬਸਾਈਟ ਵਿੱਚ ਏਮਬੈਡ ਕਰਨ ਲਈ ਇੱਕ ਵਿਹਾਰਕ ਹੱਲ ਪੇਸ਼ ਕਰਦਾ ਹੈ।
R ਪੈਕੇਜਾਂ ਜਾਂ GitHub ਪੰਨਿਆਂ ਵਿੱਚ ਚਮਕਦਾਰ ਐਪਸ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਸਰੋਤਾਂ ਦੀ ਉਪਲਬਧਤਾ ਦੇ ਬਾਵਜੂਦ, ਸ਼ਾਇਨੀਲਾਈਵ ਨੂੰ pkgdown ਵੈੱਬਸਾਈਟਾਂ ਦੇ ਨਾਲ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਜੋੜਨ ਬਾਰੇ ਗਿਆਨ ਦਾ ਅੰਤਰ ਬਣਿਆ ਹੋਇਆ ਹੈ। ਜਿਵੇਂ ਕਿ ਕੋਈ ਵਿਅਕਤੀ ਡੇਟਾਸੇਟਾਂ ਅਤੇ ਸਹਾਇਕ ਫੰਕਸ਼ਨਾਂ ਦੇ ਨਾਲ ਛੋਟੇ R ਪੈਕੇਜਾਂ ਦੀ ਸਾਂਭ-ਸੰਭਾਲ ਕਰਦਾ ਹੈ, ਤੁਸੀਂ ਸੰਭਾਵਤ ਤੌਰ 'ਤੇ ਡਾਟਾ ਖੋਜ ਨੂੰ ਅਨੁਭਵੀ ਅਤੇ ਉਪਭੋਗਤਾ-ਅਨੁਕੂਲ ਬਣਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ। ShinyLive ਇਸ ਪਾੜੇ ਨੂੰ ਪੂਰਾ ਕਰ ਸਕਦਾ ਹੈ।
ਤੁਹਾਡੀ pkgdown ਵੈੱਬਸਾਈਟ ਦੇ "ਲੇਖ" ਭਾਗ ਵਿੱਚ ਇੱਕ ਚਮਕਦਾਰ ਐਪ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨਾ R ਪੈਕੇਜ ਦਸਤਾਵੇਜ਼ਾਂ ਨੂੰ ਓਵਰਲੋਡ ਕੀਤੇ ਬਿਨਾਂ ਇੰਟਰਐਕਟਿਵ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਨ ਦਾ ਇੱਕ ਸੁਚਾਰੂ ਤਰੀਕਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਇਹ ਵਿਧੀ ਯਕੀਨੀ ਬਣਾਉਂਦੀ ਹੈ ਕਿ ਕੋਡਿੰਗ ਤੋਂ ਅਣਜਾਣ ਉਪਭੋਗਤਾ ਵੀ ਆਸਾਨੀ ਨਾਲ ਡੇਟਾ ਨੂੰ ਸਬਸੈੱਟ ਅਤੇ ਕਲਪਨਾ ਕਰ ਸਕਦੇ ਹਨ। ਇਹ ਡਿਵੈਲਪਰਾਂ ਅਤੇ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਇੱਕੋ ਜਿਹੀ ਜਿੱਤ ਹੈ! 🚀
ਉਦਾਹਰਨ ਲਈ, ਇੱਕ ਸਿਹਤ ਡੇਟਾਸੈਟ ਦੀ ਕਲਪਨਾ ਕਰੋ ਜਿੱਥੇ ਉਪਭੋਗਤਾ ਜਨਸੰਖਿਆ ਦੁਆਰਾ ਆਬਾਦੀ ਡੇਟਾ ਨੂੰ ਫਿਲਟਰ ਕਰ ਸਕਦੇ ਹਨ। ShinyLive ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਤੁਸੀਂ ਇਸ ਐਪ ਨੂੰ GitHub ਪੰਨਿਆਂ 'ਤੇ ਬਣਾ ਅਤੇ ਤੈਨਾਤ ਕਰ ਸਕਦੇ ਹੋ, ਜਿਸ ਨਾਲ ਡੇਟਾ ਨੂੰ ਗਤੀਸ਼ੀਲ ਤਰੀਕੇ ਨਾਲ ਪਹੁੰਚਯੋਗ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ ਲੇਖ ਪੜਚੋਲ ਕਰਦਾ ਹੈ ਕਿ ਤੁਹਾਡੇ ਮੌਜੂਦਾ ਐਪ ਸੈਟਅਪ ਨਾਲ ਇਸ ਕਦਮ-ਦਰ-ਕਦਮ ਨੂੰ ਕਿਵੇਂ ਪ੍ਰਾਪਤ ਕਰਨਾ ਹੈ। 🛠️
ਹੁਕਮ | ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਨ |
---|---|
selectInput | ਵਿਕਲਪਾਂ ਨੂੰ ਚੁਣਨ ਲਈ ਡ੍ਰੌਪਡਾਉਨ ਮੀਨੂ ਬਣਾਉਣ ਲਈ ਚਮਕਦਾਰ UI ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ: ਚੁਣੋ ਇਨਪੁਟ("var", "ਵੇਰੀਏਬਲ ਚੁਣੋ:", ਵਿਕਲਪ = ਨਾਮ(mtcars))। ਇਹ ਵੇਰੀਏਬਲ ਚੋਣ ਲਈ ਗਤੀਸ਼ੀਲ ਉਪਭੋਗਤਾ ਇੰਪੁੱਟ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। |
sliderInput | ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਮੁੱਲਾਂ ਦੀ ਇੱਕ ਸ਼੍ਰੇਣੀ ਚੁਣਨ ਦੇਣ ਲਈ ਚਮਕਦਾਰ ਵਿੱਚ ਇੱਕ ਸਲਾਈਡਰ ਇਨਪੁਟ ਵਿਜੇਟ ਬਣਾਉਂਦਾ ਹੈ। ਉਦਾਹਰਨ: sliderInput("ਰੇਂਜ", "ਫਿਲਟਰ ਰੇਂਜ:", min = 0, ਅਧਿਕਤਮ = 100, ਮੁੱਲ = c(25, 75))। ਇੰਟਰਐਕਟਿਵ ਫਿਲਟਰਿੰਗ ਲਈ ਜ਼ਰੂਰੀ। |
renderPlot | ਯੂਜ਼ਰ ਇਨਪੁਟ ਦੇ ਆਧਾਰ 'ਤੇ ਗਤੀਸ਼ੀਲ ਤੌਰ 'ਤੇ ਪਲਾਟ ਬਣਾਉਣ ਲਈ ਚਮਕਦਾਰ ਸਰਵਰ ਤਰਕ ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ: output$plot |
filter | A function from dplyr to subset data based on conditions. Example: filter(get(input$var) >ਸ਼ਰਤਾਂ ਦੇ ਆਧਾਰ 'ਤੇ dplyr ਤੋਂ ਸਬਸੈੱਟ ਡੇਟਾ ਤੱਕ ਇੱਕ ਫੰਕਸ਼ਨ। ਉਦਾਹਰਨ: ਫਿਲਟਰ(get(input$var) >= input$range[1])। ਡੇਟਾਸੈਟਾਂ ਵਿੱਚ ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਫਿਲਟਰਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਉਪਯੋਗੀ। |
aes_string | ggplot2 ਵਿੱਚ x ਅਤੇ y ਧੁਰੇ ਵਰਗੇ ਸੁਹਜ ਸ਼ਾਸਤਰ ਨੂੰ ਪ੍ਰੋਗਰਾਮੇਟਿਕ ਤੌਰ 'ਤੇ ਸੈੱਟ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਉਦਾਹਰਨ: aes_string(x = input$var)। ਗਤੀਸ਼ੀਲ ਪਲਾਟ ਬਣਾਉਣ ਲਈ ਆਦਰਸ਼। |
geom_histogram | ਹਿਸਟੋਗ੍ਰਾਮ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਬਣਾਉਣ ਲਈ ਇੱਕ ggplot2 ਲੇਅਰ। ਉਦਾਹਰਨ: geom_histogram(bins = 10, fill = "ਨੀਲਾ", ਰੰਗ = "ਚਿੱਟਾ")। ਇੱਕ ਐਪ ਵਿੱਚ ਵੰਡਾਂ ਦੀ ਕਲਪਨਾ ਕਰਨ ਲਈ ਉਪਯੋਗੀ। |
uses | GitHub ਕਾਰਵਾਈਆਂ ਵਿੱਚ YAML ਸੰਟੈਕਸ ਮੁੜ ਵਰਤੋਂ ਯੋਗ ਕਾਰਵਾਈਆਂ ਨੂੰ ਨਿਸ਼ਚਿਤ ਕਰਨ ਲਈ। ਉਦਾਹਰਨ: use: actions/checkout@v3. ਪੂਰਵ ਪਰਿਭਾਸ਼ਿਤ ਵਰਕਫਲੋ ਦੇ ਨਾਲ ਸਹਿਜ ਏਕੀਕਰਣ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ। |
shinylive.js | ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਚਮਕਦਾਰ ਐਪਸ ਚਲਾਉਣ ਲਈ ਇੱਕ JavaScript ਲਾਇਬ੍ਰੇਰੀ। ਉਦਾਹਰਨ: । ਸਥਿਰ HTML ਪੰਨਿਆਂ ਵਿੱਚ ਚਮਕਦਾਰ ਐਪਾਂ ਨੂੰ ਏਮਬੈਡ ਕਰਨ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਂਦਾ ਹੈ। |
Shinylive.App | ਇੱਕ ਖਾਸ HTML ਕੰਟੇਨਰ ਵਿੱਚ ਇੱਕ ShinyLive ਐਪ ਸ਼ੁਰੂ ਅਤੇ ਚਲਾਉਂਦਾ ਹੈ। ਉਦਾਹਰਨ: const ਐਪ = new Shinylive.App("#shiny-app");। ਬ੍ਰਾਊਜ਼ਰ-ਅਧਾਰਿਤ ਐਪ ਕਾਰਜਕੁਸ਼ਲਤਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। |
sliderInput | ਸੰਖਿਆਤਮਕ ਰੇਂਜ ਚੋਣ ਲਈ ਇੱਕ ਸਲਾਈਡਰ ਇੰਪੁੱਟ ਬਣਾਉਂਦਾ ਹੈ। ਉਦਾਹਰਨ: sliderInput("ਰੇਂਜ", "ਫਿਲਟਰ ਰੇਂਜ:", min = 0, ਅਧਿਕਤਮ = 100, ਮੁੱਲ = c(25, 75))। ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਡਾਇਨਾਮਿਕ ਰੇਂਜ ਫਿਲਟਰਿੰਗ ਜੋੜਦਾ ਹੈ। |
ਸ਼ਾਈਨਲਾਈਵ ਨਾਲ ਇੰਟਰਐਕਟਿਵ ਡੇਟਾ ਐਕਸਪਲੋਰੇਸ਼ਨ ਟੂਲ ਬਣਾਉਣਾ
ਪਹਿਲੀ ਸਕ੍ਰਿਪਟ, ਆਰ ਅਤੇ ਸ਼ਾਇਨੀ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਬਣਾਈ ਗਈ, ਇੱਕ ਗਤੀਸ਼ੀਲ ਇੰਟਰਫੇਸ ਬਣਾਉਣ 'ਤੇ ਕੇਂਦ੍ਰਤ ਕਰਦੀ ਹੈ ਜੋ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਡਾਟਾਸੈਟਾਂ ਨੂੰ ਇੰਟਰਐਕਟਿਵ ਤਰੀਕੇ ਨਾਲ ਐਕਸਪਲੋਰ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ। ਦ ਇਨਪੁਟ ਚੁਣੋ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਡ੍ਰੌਪਡਾਉਨ ਮੀਨੂ ਤੋਂ ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਗਤੀਸ਼ੀਲ ਤੌਰ 'ਤੇ ਚੁਣਨ ਦੇ ਯੋਗ ਬਣਾਉਣ ਲਈ, ਐਪ ਨੂੰ ਉਹਨਾਂ ਦੀਆਂ ਲੋੜਾਂ ਮੁਤਾਬਕ ਤਿਆਰ ਕਰਨ ਲਈ ਕਮਾਂਡ ਜ਼ਰੂਰੀ ਹੈ। ਨਾਲ ਪੇਅਰ ਕੀਤਾ sliderInput, ਉਪਭੋਗਤਾ ਡੇਟਾ ਨੂੰ ਫਿਲਟਰ ਕਰਨ ਲਈ ਮੁੱਲਾਂ ਦੀ ਇੱਕ ਖਾਸ ਸ਼੍ਰੇਣੀ ਦੀ ਚੋਣ ਕਰਕੇ ਆਪਣੀ ਖੋਜ ਨੂੰ ਹੋਰ ਸੁਧਾਰ ਸਕਦੇ ਹਨ। ਉਦਾਹਰਨ ਲਈ, ਜਿਵੇਂ ਕਿ ਇੱਕ ਡੇਟਾਸੈਟ ਵਿੱਚ mtcars, ਉਪਭੋਗਤਾ ਇੱਕ ਵੇਰੀਏਬਲ ਦੇ ਤੌਰ 'ਤੇ "mpg" ਨੂੰ ਚੁਣ ਸਕਦੇ ਹਨ ਅਤੇ 20 ਅਤੇ 30 ਦੇ ਵਿਚਕਾਰ ਮਾਈਲੇਜ ਵਾਲੀਆਂ ਕਾਰਾਂ ਨੂੰ ਅਲੱਗ ਕਰਨ ਲਈ ਸਲਾਈਡਰ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਨ। ਇਹ ਸੁਮੇਲ ਉਪਭੋਗਤਾ-ਅਨੁਕੂਲ ਅਤੇ ਅਨੁਭਵੀ ਇੰਟਰਫੇਸ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ। 🚀
ਸਰਵਰ-ਸਾਈਡ ਤਰਕ ਉਪਭੋਗਤਾ ਇਨਪੁਟਸ ਦੇ ਅਧਾਰ ਤੇ ਪ੍ਰਤੀਕਿਰਿਆਸ਼ੀਲ ਆਉਟਪੁੱਟ ਤਿਆਰ ਕਰਕੇ UI ਨੂੰ ਪੂਰਕ ਕਰਦਾ ਹੈ। ਇੱਥੇ, ਦ renderPlot ਫੰਕਸ਼ਨ ਮਹੱਤਵਪੂਰਨ ਹੈ - ਇਹ ਫਿਲਟਰ ਕੀਤੇ ਡੇਟਾਸੈਟ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਦਾ ਹੈ ਅਤੇ ਫਲਾਈ 'ਤੇ ਗਤੀਸ਼ੀਲ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਬਣਾਉਂਦਾ ਹੈ। dplyr ਦਾ ਏਕੀਕਰਣ ਫਿਲਟਰ ਫੰਕਸ਼ਨ ਡੇਟਾਸੈਟ ਦੀ ਸਹਿਜ ਸਬਸੈਟਿੰਗ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ, ਜਦੋਂ ਕਿ ggplot2 ਦਾ geom_histogram ਦ੍ਰਿਸ਼ਟੀਗਤ ਤੌਰ 'ਤੇ ਆਕਰਸ਼ਕ ਅਤੇ ਜਾਣਕਾਰੀ ਭਰਪੂਰ ਪਲਾਟਾਂ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ। ਇੱਕ ਸਿਹਤ ਡੇਟਾਸੈਟ ਦੀ ਕਲਪਨਾ ਕਰੋ ਜਿੱਥੇ ਇੱਕ ਉਪਭੋਗਤਾ ਉਮਰ ਦੀਆਂ ਰੇਂਜਾਂ ਨੂੰ ਫਿਲਟਰ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਸਿਹਤ ਮੈਟ੍ਰਿਕਸ ਦੀ ਵੰਡ ਨੂੰ ਤੁਰੰਤ ਦੇਖ ਸਕਦਾ ਹੈ — ਇਹ ਸਕ੍ਰਿਪਟ ਵਿਕਾਸਕਾਰਾਂ ਲਈ ਘੱਟੋ-ਘੱਟ ਕੋਸ਼ਿਸ਼ਾਂ ਨਾਲ ਅਜਿਹੀ ਅੰਤਰਕਿਰਿਆ ਸੰਭਵ ਬਣਾਉਂਦੀ ਹੈ।
ਦੂਜੀ ਸਕ੍ਰਿਪਟ GitHub ਐਕਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਵੈਚਾਲਤ ਤੈਨਾਤੀ 'ਤੇ ਕੇਂਦ੍ਰਤ ਹੈ। ਇਹ ਖਾਸ ਤੌਰ 'ਤੇ pkgdown ਵੈੱਬਸਾਈਟਾਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਬਣਾਈ ਰੱਖਣ ਅਤੇ ਅੱਪਡੇਟ ਕਰਨ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ। ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਏ deploy-app.yaml ਫਾਈਲ, ਤੁਸੀਂ ਅਪਡੇਟਾਂ ਨੂੰ ਅੱਗੇ ਵਧਾਉਣ ਅਤੇ ਸ਼ਾਈਨਲਾਈਵ ਐਪ ਨੂੰ ਤੈਨਾਤ ਕਰਨ ਦੀ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਸਵੈਚਾਲਤ ਕਰ ਸਕਦੇ ਹੋ। ਮੁੱਖ ਕਮਾਂਡਾਂ ਜਿਵੇਂ ਕਿ actions/checkout@v3 ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰੋ ਕਿ ਰਿਪੋਜ਼ਟਰੀ ਤੋਂ ਨਵੀਨਤਮ ਕੋਡ ਵਰਤਿਆ ਗਿਆ ਹੈ, ਜਦੋਂ ਕਿ ਸ਼ਾਈਨਲਾਈਵ-ਵਿਸ਼ੇਸ਼ ਸੈਟਅਪ ਵਰਕਫਲੋ ਵਿੱਚ ਸਹਿਜੇ ਹੀ ਏਕੀਕ੍ਰਿਤ ਹੁੰਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਆਪਣੇ ਐਪ ਨੂੰ ਨਵੇਂ ਫਿਲਟਰਾਂ ਜਾਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨਾਲ ਅੱਪਡੇਟ ਕਰਨ ਦੀ ਕਲਪਨਾ ਕਰੋ—ਇਹ ਆਟੋਮੇਸ਼ਨ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਤਬਦੀਲੀਆਂ ਤੁਰੰਤ ਔਨਲਾਈਨ ਪ੍ਰਤੀਬਿੰਬਤ ਹੋਣ, ਸਮੇਂ ਦੀ ਬਚਤ ਅਤੇ ਦਸਤੀ ਗਲਤੀਆਂ ਨੂੰ ਘਟਾਉਂਦੀਆਂ ਹਨ। ⚙️
ਤੀਜੇ ਹੱਲ ਵਿੱਚ ਇੱਕ ਸਥਿਰ HTML ਫਾਈਲ ਵਿੱਚ ਚਮਕਦਾਰ ਐਪ ਨੂੰ ਸਮੇਟਣਾ ਸ਼ਾਮਲ ਹੈ। ਵਰਤ ਕੇ shinylive.js, ਡਿਵੈਲਪਰ ਇੱਕ ਸਰਗਰਮ R ਸਰਵਰ ਦੀ ਲੋੜ ਨੂੰ ਬਾਈਪਾਸ ਕਰਦੇ ਹੋਏ, ਐਪ ਨੂੰ ਸਿੱਧਾ ਆਪਣੀ pkgdown ਵੈੱਬਸਾਈਟ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰ ਸਕਦੇ ਹਨ। ਇਹ ਵਿਧੀ ਐਪ ਨੂੰ ਬਿਨਾਂ R ਸਥਾਪਿਤ ਕੀਤੇ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਪਹੁੰਚਯੋਗ ਬਣਾਉਂਦਾ ਹੈ, ਪਹੁੰਚਯੋਗਤਾ ਨੂੰ ਵਧਾਉਂਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਇੱਕ ਅਧਿਆਪਕ ਜਨਸੰਖਿਆ ਡੇਟਾ 'ਤੇ ਇੱਕ ਇੰਟਰਐਕਟਿਵ ਐਪ ਨੂੰ ਵਿਦਿਆਰਥੀਆਂ ਨਾਲ ਸਾਂਝਾ ਕਰ ਸਕਦਾ ਹੈ, ਜੋ ਇਸਨੂੰ ਸਿੱਧੇ ਆਪਣੇ ਬ੍ਰਾਊਜ਼ਰਾਂ ਤੋਂ ਐਕਸਪਲੋਰ ਕਰ ਸਕਦੇ ਹਨ। ਇਹ ਹੱਲ ਵਿਸ਼ੇਸ਼ ਤੌਰ 'ਤੇ ਗੈਰ-ਕੋਡਰਾਂ ਲਈ ਕੀਮਤੀ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਗੁੰਝਲਦਾਰ ਡੇਟਾਸੈਟਾਂ ਨੂੰ ਇੱਕ ਦਿਲਚਸਪ ਅਤੇ ਵਿਦਿਅਕ ਅਨੁਭਵ ਵਿੱਚ ਬਦਲਦਾ ਹੈ। 🌐
Shinylive ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ pkgdown ਵੈੱਬਸਾਈਟ ਵਿੱਚ ਇੱਕ ਚਮਕਦਾਰ ਐਪ ਨੂੰ ਏਮਬੈਡ ਕਰਨਾ
ਹੱਲ 1: ਫਰੰਟਐਂਡ ਅਤੇ ਬੈਕਐਂਡ ਏਕੀਕਰਣ ਲਈ ਸ਼ਾਈਨਲਾਈਵ ਨਾਲ ਆਰ
# app.R
# Load necessary libraries
library(shiny)
library(dplyr)
library(ggplot2)
# UI definition
ui <- fluidPage(
titlePanel("Interactive Data Viewer"),
sidebarLayout(
sidebarPanel(
selectInput("var", "Select Variable:",
choices = names(mtcars)),
sliderInput("range", "Filter Range:",
min = 0, max = 100, value = c(25, 75))
),
mainPanel(plotOutput("plot"))
)
)
# Server logic
server <- function(input, output) {
output$plot <- renderPlot({
data <- mtcars %>%
filter(get(input$var) >= input$range[1],
get(input$var) <= input$range[2])
ggplot(data, aes_string(x = input$var)) +
geom_histogram(bins = 10, fill = "blue", color = "white")
})
}
# Run the app
shinyApp(ui, server)
GitHub ਕਿਰਿਆਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ Shinylive ਨੂੰ ਤੈਨਾਤ ਕਰਨਾ
ਹੱਲ 2: GitHub ਐਕਸ਼ਨਾਂ ਅਤੇ ਸ਼ਾਈਨਲਾਈਵ ਨਾਲ ਸਵੈਚਾਲਤ ਤੈਨਾਤੀ
# deploy-app.yaml
# Workflow configuration
name: Deploy ShinyLive App
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up R
uses: r-lib/actions/setup-r@v2
- name: Install dependencies
run: |
Rscript -e "install.packages(c('shiny', 'shinylive'))"
- name: Deploy app
uses: posit-dev/r-shinylive@actions-v1
with:
app-dir: ./
ਚਮਕਦਾਰ ਐਪ ਲਈ ਇੱਕ ਸਥਿਰ HTML ਰੈਪਰ ਸ਼ਾਮਲ ਕਰਨਾ
ਹੱਲ 3: pkgdown ਏਕੀਕਰਣ ਲਈ ਸਥਿਰ HTML ਵਿੱਚ ਚਮਕਦਾਰ ਐਪ ਨੂੰ ਸਮੇਟਣਾ
< !-- index.html -->
<!DOCTYPE html>
<html>
<head>
<title>Interactive Shiny App</title>
<script src="shinylive.js"></script>
</head>
<body>
<div id="shiny-app"></div>
<script>
const app = new Shinylive.App("#shiny-app");
app.run();
</script>
</body>
</html>
ShinyLive ਨਾਲ pkgdown ਵੈੱਬਸਾਈਟਾਂ ਲਈ ਪਹੁੰਚਯੋਗਤਾ ਅਤੇ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਵਧਾਉਣਾ
ਵਰਤਣ ਦਾ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਫਾਇਦਾ ਚਮਕਦਾਰ ਲਾਈਵ ਇੱਕ ਕਿਰਿਆਸ਼ੀਲ R ਸਰਵਰ 'ਤੇ ਨਿਰਭਰ ਕੀਤੇ ਬਿਨਾਂ ਸਟੈਂਡਅਲੋਨ ਇੰਟਰਐਕਟੀਵਿਟੀ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਹੈ। ਇਹ GitHub ਪੰਨਿਆਂ ਵਰਗੇ ਸਥਿਰ ਪਲੇਟਫਾਰਮਾਂ 'ਤੇ ਐਪਸ ਦੀ ਮੇਜ਼ਬਾਨੀ ਲਈ ਸੰਪੂਰਨ ਬਣਾਉਂਦਾ ਹੈ। ਰਵਾਇਤੀ ਚਮਕਦਾਰ ਐਪਾਂ ਦੇ ਉਲਟ ਜਿਨ੍ਹਾਂ ਨੂੰ ਲਗਾਤਾਰ ਸਰਵਰ ਸਹਾਇਤਾ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ShinyLive ਤੁਹਾਡੀ ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ ਇੱਕ ਸਵੈ-ਨਿਰਭਰ JavaScript ਬੰਡਲ ਵਿੱਚ ਬਦਲਦਾ ਹੈ। ਇਸ ਬੰਡਲ ਨੂੰ ਸਿੱਧੇ ਤੁਹਾਡੀ pkgdown ਵੈੱਬਸਾਈਟ ਵਿੱਚ ਏਮਬੈਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਕਿਸੇ ਵੀ ਬ੍ਰਾਊਜ਼ਰ ਤੋਂ ਤੁਹਾਡੇ ਡੇਟਾਸੇਟਾਂ ਦੀ ਨਿਰਵਿਘਨ ਖੋਜ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਮਿਲਦੀ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਜੇਕਰ ਤੁਹਾਡੇ R ਪੈਕੇਜ ਵਿੱਚ ਹਵਾ ਦੀ ਗੁਣਵੱਤਾ ਮੈਟ੍ਰਿਕਸ ਦਾ ਇੱਕ ਡੇਟਾਸੈਟ ਸ਼ਾਮਲ ਹੈ, ਤਾਂ ਉਪਭੋਗਤਾ ਕਿਸੇ ਵੀ ਵਾਧੂ ਸੌਫਟਵੇਅਰ ਨੂੰ ਸਥਾਪਿਤ ਕਰਨ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਡਾਟਾ ਨੂੰ ਗਤੀਸ਼ੀਲ ਰੂਪ ਵਿੱਚ ਫਿਲਟਰ ਅਤੇ ਕਲਪਨਾ ਕਰ ਸਕਦੇ ਹਨ। 🌍
ਇੱਕ ਹੋਰ ਲਾਭ ਇਸਦੀ ਅਨੁਕੂਲਤਾ ਵਿੱਚ ਹੈ ਗੈਰ-ਕੋਡਰ. ਡ੍ਰੌਪਡਾਊਨ ਅਤੇ ਸਲਾਈਡਰਾਂ ਵਰਗੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰਕੇ, ਤੁਸੀਂ ਅਜਿਹਾ ਮਾਹੌਲ ਬਣਾਉਂਦੇ ਹੋ ਜਿੱਥੇ ਕੋਈ ਵੀ ਤੁਹਾਡੇ ਡੇਟਾ ਨਾਲ ਇੰਟਰੈਕਟ ਕਰ ਸਕਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਇੱਕ ਸਿਹਤ ਪੇਸ਼ੇਵਰ ਕੋਡ ਦੀ ਇੱਕ ਲਾਈਨ ਲਿਖਣ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਉਮਰ ਸਮੂਹਾਂ ਜਾਂ ਖੇਤਰਾਂ ਦੀ ਚੋਣ ਕਰਕੇ ਆਬਾਦੀ ਡੇਟਾ ਦੀ ਜਾਂਚ ਕਰ ਸਕਦਾ ਹੈ। ShinyLive ਅਤੇ GitHub ਪੰਨਿਆਂ ਦਾ ਸੁਮੇਲ ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਇਹ ਇੰਟਰਐਕਟਿਵ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਆਸਾਨੀ ਨਾਲ ਪਹੁੰਚਯੋਗ ਅਤੇ ਅਨੁਭਵੀ ਹਨ, ਤੁਹਾਡੇ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਵਿਸ਼ਾਲ ਦਰਸ਼ਕਾਂ ਲਈ ਬਹੁਤ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਬਣਾਉਂਦੀਆਂ ਹਨ। 🧩
ਇਸ ਤੋਂ ਇਲਾਵਾ, ਸ਼ਾਇਨੀਲਾਈਵ ਐਪ ਨੂੰ ਚਲਾਉਣ ਲਈ ਲੋੜੀਂਦੇ ਸਰੋਤਾਂ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰਕੇ ਤੁਹਾਡੀ pkgdown ਵੈੱਬਸਾਈਟ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਨੂੰ ਵਧਾਉਂਦਾ ਹੈ। ਕਿਉਂਕਿ ਸਾਰਾ ਤਰਕ JavaScript ਵਿੱਚ ਕੰਪਾਇਲ ਕੀਤਾ ਗਿਆ ਹੈ, ਐਪਸ ਤੇਜ਼ੀ ਨਾਲ ਲੋਡ ਹੁੰਦੇ ਹਨ ਅਤੇ ਨਿਰਵਿਘਨ ਇੰਟਰਐਕਟੀਵਿਟੀ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦੇ ਹਨ। ਇਹ ਖਾਸ ਤੌਰ 'ਤੇ ਵੱਡੇ ਡੇਟਾਸੈਟਾਂ ਨੂੰ ਦਿਖਾਉਣ ਲਈ ਲਾਭਦਾਇਕ ਹੈ, ਜਿੱਥੇ ਪਲਾਟ ਰੈਂਡਰ ਕਰਨ ਜਾਂ ਫਿਲਟਰ ਲਾਗੂ ਕਰਨ ਨਾਲ ਦੇਰੀ ਹੋ ਸਕਦੀ ਹੈ। ਨਤੀਜਾ ਇੱਕ ਪੇਸ਼ੇਵਰ-ਗਰੇਡ ਉਪਭੋਗਤਾ ਅਨੁਭਵ ਹੈ ਜੋ ਆਧੁਨਿਕ ਵੈਬ ਮਿਆਰਾਂ ਅਤੇ ਪਹੁੰਚਯੋਗਤਾ ਉਮੀਦਾਂ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ। 🚀
pkgdown ਵੈੱਬਸਾਈਟਾਂ 'ਤੇ ShinyLive ਬਾਰੇ ਅਕਸਰ ਪੁੱਛੇ ਜਾਂਦੇ ਸਵਾਲ - Frequently asked Questions about ShinyLive in Punjabi
- ਮੈਂ ਇੱਕ pkgdown ਵੈਬਸਾਈਟ ਵਿੱਚ ਇੱਕ ਚਮਕਦਾਰ ਐਪ ਨੂੰ ਕਿਵੇਂ ਏਮਬੇਡ ਕਰਾਂ?
- ਤੁਸੀਂ ਵਰਤ ਸਕਦੇ ਹੋ ShinyLive ਆਪਣੀ ਚਮਕਦਾਰ ਐਪ ਨੂੰ JavaScript ਬੰਡਲ ਵਿੱਚ ਬਦਲਣ ਅਤੇ ਇਸਨੂੰ ਵਿੱਚ ਏਮਬੇਡ ਕਰਨ ਲਈ Articles ਤੁਹਾਡੀ pkgdown ਵੈੱਬਸਾਈਟ ਦਾ ਭਾਗ।
- ਕੀ ShinyLive ਐਪਸ ਲਈ ਲਾਈਵ R ਸਰਵਰ ਹੋਣਾ ਜ਼ਰੂਰੀ ਹੈ?
- ਨਹੀਂ, ShinyLive ਐਪਸ ਇਕੱਲੇ ਹਨ ਅਤੇ ਕਿਸੇ ਕਿਰਿਆਸ਼ੀਲ R ਸਰਵਰ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਸਿੱਧੇ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਚੱਲ ਸਕਦੇ ਹਨ।
- ਕੀ ਮੈਂ ਐਪ ਨੂੰ ਆਪਣੇ ਆਪ ਅੱਪਡੇਟ ਕਰ ਸਕਦਾ ਹਾਂ ਜਦੋਂ ਮੈਂ GitHub ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਨੂੰ ਧੱਕਦਾ ਹਾਂ?
- ਹਾਂ, ਤੁਸੀਂ ਵਰਤ ਸਕਦੇ ਹੋ GitHub Actions ਤੈਨਾਤੀ ਨੂੰ ਸਵੈਚਾਲਤ ਕਰਨ ਲਈ. ਇੱਕ ਵਰਕਫਲੋ ਵਰਗਾ deploy-app.yaml ਤੁਹਾਡੇ ਲਈ ਇਸ ਨੂੰ ਸੰਭਾਲ ਸਕਦਾ ਹੈ.
- ਮੈਂ ਕਿਸ ਕਿਸਮ ਦੇ ਉਪਭੋਗਤਾ ਇੰਟਰੈਕਸ਼ਨਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰ ਸਕਦਾ ਹਾਂ?
- ਵਰਗੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਕਰ ਸਕਦੇ ਹੋ selectInput ਡਰਾਪਡਾਊਨ ਲਈ ਅਤੇ sliderInput ਤੁਹਾਡੀ ਐਪ ਨੂੰ ਬਹੁਤ ਜ਼ਿਆਦਾ ਇੰਟਰਐਕਟਿਵ ਬਣਾਉਣ ਲਈ ਸੰਖਿਆਤਮਕ ਰੇਂਜਾਂ ਲਈ।
- ਕੀ ShinyLive ਗੈਰ-ਕੋਡਰਾਂ ਲਈ ਢੁਕਵਾਂ ਹੈ?
- ਬਿਲਕੁਲ! ShinyLive ਗੈਰ-ਕੋਡਰਾਂ ਨੂੰ ਇੰਟਰਐਕਟਿਵ ਵਿਜੇਟਸ ਦੁਆਰਾ ਡੇਟਾ ਦੀ ਪੜਚੋਲ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ, ਇਸ ਨੂੰ ਪਹੁੰਚਯੋਗਤਾ ਲਈ ਇੱਕ ਵਧੀਆ ਸਾਧਨ ਬਣਾਉਂਦਾ ਹੈ।
ਇੰਟਰਐਕਟਿਵ ਡੇਟਾ ਐਕਸਪਲੋਰੇਸ਼ਨ ਨੂੰ ਆਸਾਨ ਬਣਾਇਆ ਗਿਆ
ਸ਼ਾਈਨਲਾਈਵ pkgdown ਵੈੱਬਸਾਈਟਾਂ ਵਿੱਚ ਇੰਟਰਐਕਟੀਵਿਟੀ ਨੂੰ ਏਕੀਕ੍ਰਿਤ ਕਰਨ ਲਈ ਇੱਕ ਉਪਭੋਗਤਾ-ਅਨੁਕੂਲ ਹੱਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਚਮਕਦਾਰ ਐਪਸ ਨੂੰ ਬ੍ਰਾਊਜ਼ਰ-ਤਿਆਰ JavaScript ਬੰਡਲਾਂ ਵਿੱਚ ਬਦਲ ਕੇ, ਇਹ ਸਾਰੇ ਹੁਨਰ ਪੱਧਰਾਂ ਦੇ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਦਿਲਚਸਪ ਡੇਟਾ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਦੇ ਦਰਵਾਜ਼ੇ ਖੋਲ੍ਹਦਾ ਹੈ। ਉਦਾਹਰਨ ਲਈ, ਜਨਸੰਖਿਆ 'ਤੇ ਇੱਕ ਡੇਟਾਸੈਟ ਨੂੰ ਸਧਾਰਨ ਡ੍ਰੌਪਡਾਉਨ ਮੀਨੂ ਅਤੇ ਸਲਾਈਡਰਾਂ ਨਾਲ ਖੋਜਿਆ ਜਾ ਸਕਦਾ ਹੈ। 🌟
GitHub ਕਿਰਿਆਵਾਂ ਦੇ ਨਾਲ ShinyLive ਨੂੰ ਜੋੜਨਾ ਤੈਨਾਤੀ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਸੁਚਾਰੂ ਬਣਾਉਂਦਾ ਹੈ, ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਤੁਹਾਡੀ ਵੈਬਸਾਈਟ ਆਸਾਨੀ ਨਾਲ ਅੱਪ-ਟੂ-ਡੇਟ ਰਹਿੰਦੀ ਹੈ। ਭਾਵੇਂ ਤੁਸੀਂ ਇੱਕ ਡਿਵੈਲਪਰ ਹੋ ਜਾਂ ਇੱਕ ਡੇਟਾ ਪੇਸ਼ੇਵਰ ਹੋ, ਇਹ ਪਹੁੰਚ ਤਕਨੀਕੀ ਸਮੱਗਰੀ ਅਤੇ ਅਨੁਭਵੀ ਉਪਭੋਗਤਾ ਅਨੁਭਵ ਦੇ ਵਿਚਕਾਰ ਪਾੜੇ ਨੂੰ ਪੂਰਾ ਕਰਦੀ ਹੈ, ਤੁਹਾਡੀਆਂ ਡੇਟਾ ਕਹਾਣੀਆਂ ਨੂੰ ਇੱਕ ਵੈੱਬ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਜੀਵਿਤ ਬਣਾਉਂਦਾ ਹੈ। 📊
ਸਰੋਤ ਅਤੇ ਹਵਾਲੇ
- ਸਮੱਗਰੀ ਅਤੇ ਉਦਾਹਰਨਾਂ ਅਧਿਕਾਰਤ ਸ਼ਾਈਨਲਾਈਵ ਦਸਤਾਵੇਜ਼ਾਂ ਅਤੇ ਟਿਊਟੋਰਿਅਲਸ ਤੋਂ ਪ੍ਰੇਰਿਤ ਸਨ। ਹੋਰ ਵੇਰਵਿਆਂ ਲਈ, 'ਤੇ ਜਾਓ ਚਮਕਦਾਰ ਲਾਈਵ ਜਾਣ-ਪਛਾਣ .
- ਤੈਨਾਤੀ ਵਰਕਫਲੋਜ਼ ਤੋਂ ਅਨੁਕੂਲਿਤ ਕੀਤੇ ਗਏ ਹਨ ShinyLive GitHub ਰਿਪੋਜ਼ਟਰੀ , ਜਿਸ ਵਿੱਚ ਨਮੂਨਾ GitHub ਐਕਸ਼ਨ ਵਰਕਫਲੋ ਅਤੇ ਏਕੀਕਰਣ ਸੁਝਾਅ ਸ਼ਾਮਲ ਹਨ।
- pkgdown ਏਕੀਕਰਣ ਰਣਨੀਤੀ ਦੁਆਰਾ ਮਾਰਗਦਰਸ਼ਨ ਕੀਤਾ ਗਿਆ ਸੀ pkgdown ਦਸਤਾਵੇਜ਼ , ਜੋ ਕਿ R ਪੈਕੇਜਾਂ ਲਈ ਦਸਤਾਵੇਜ਼ੀ ਵੈੱਬਸਾਈਟਾਂ ਬਣਾਉਣ ਅਤੇ ਪ੍ਰਬੰਧਿਤ ਕਰਨ ਦੀ ਸੂਝ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
- 'ਤੇ ਲਾਈਵ ਉਦਾਹਰਨ ਦੀ ਪੜਚੋਲ ਕਰਨ ਤੋਂ ਵਾਧੂ ਪ੍ਰੇਰਨਾ ਮਿਲੀ SC ਆਬਾਦੀ GitHub ਪੰਨਾ , ਜੋ pkgdown ਵਿੱਚ ShinyLive ਦੀ ਅਸਲ-ਸੰਸਾਰ ਐਪਲੀਕੇਸ਼ਨ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕਰਦਾ ਹੈ।