【0008day】Shiny的介绍

介绍:Shiny 是一个开源 R 包,它提供了一个优雅而强大的 Web 框架,用于使用 R 构建 Web 应用程序。Shiny 可以帮助您将分析转变为交互式 Web 应用程序,而无需 HTML、CSS 或 JavaScript 知识。

# download R package
pkgtest <- function(x){if(x %in% rownames(installed.packages()) == FALSE){install.packages(x,dependencies = TRUE)}library(x,character.only = TRUE)}
neededpackages <- c("shiny","dplyr","plotly","readxl","DT","ggExtra")
for(package in neededpackages){pkgtest(package)}library(shiny)
library(bslib)
library(dplyr)
library(ggplot2)
library(ggExtra)penguins_csv <- "E:\\BaiduSyncdisk\\A-Area longtime\\R language\\Niche\\temp_data.csv"df <- readr::read_csv(penguins_csv)
# Find subset of columns that are suitable for scatter plot
df_num <- df |> select(where(is.numeric), -Year)ui <- page_sidebar(sidebar = sidebar(varSelectInput("xvar", "X variable", df_num, selected = "Bill Length (mm)"),varSelectInput("yvar", "Y variable", df_num, selected = "Bill Depth (mm)"),checkboxGroupInput("species", "Filter by species",choices = unique(df$Species), selected = unique(df$Species)),hr(), # Add a horizontal rulecheckboxInput("by_species", "Show species", TRUE),checkboxInput("show_margins", "Show marginal plots", TRUE),checkboxInput("smooth", "Add smoother"),),plotOutput("scatter")
)server <- function(input, output, session) {subsetted <- reactive({req(input$species)df |> filter(Species %in% input$species)})output$scatter <- renderPlot({p <- ggplot(subsetted(), aes(!!input$xvar, !!input$yvar)) + list(theme(legend.position = "bottom"),if (input$by_species) aes(color = Species),geom_point(),if (input$smooth) geom_smooth())if (input$show_margins) {margin_type <- if (input$by_species) "density" else "histogram"p <- ggExtra::ggMarginal(p, type = margin_type, margins = "both",size = 8, groupColour = input$by_species, groupFill = input$by_species)}p}, res = 100)
}shinyApp(ui, server)

所需要的资料下载:https://download.csdn.net/download/qq_45697428/89440340

运行的结果:

在这里插入图片描述
在这个框架下可以调整XY轴的内容

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/30321.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是自动驾驶中的CopyCat?

"CopyCat"这个词通常有两个含义: 字面意思:它可以指一个模仿别人的人,就像猫一样模仿其他猫的行为。在日常用语中,如果有人说某人是个"copycat",他们可能是在说这个人缺乏原创性,总是模仿别人的想法、风格或者行为。 心理学和犯罪学中的含义:在心…

网页应用发布到钉钉Windows客户端需注意事项

现在很多单位在用钉钉了&#xff0c;也一股脑地把很多网页应用转到钉钉上来。 首先要注意的是&#xff0c;如果html或js中新打开页面的话&#xff0c;在浏览器中访问会新建一个标签页&#xff0c;并在新的标签页内显示内容。但是钉钉中&#xff0c;则是打开系统的默认浏览器&am…

计算机体系结构期末复习(一二章)

计算机体系结构期末复习&#xff08;一二章&#xff09; 由于内容比较多&#xff0c;分为两次发出 注意&#xff1a;可能有部分考点遗漏&#xff0c;可能有部分例题没有匹配正确的知识点或被遗漏&#xff0c;欢迎各位补充 第一章 1. 计算机系统的层次性 知识点&#xff1a…

docker重要操作与直连方法

文章目录 前言一、nvidia-docker安装方法1、nvidia-docker安装2、重启动ssh 二、构建镜像1、构建镜像docker拉取构建本地镜像加载构建 2、容器转镜像 前言 docker容器相关操作&#xff0c;包含镜像、容器、删除&#xff0c;特别是容器如何直接连接方法&#xff0c;可类似物理机…

实验室自用LabVIEW软件与商用软件价格差异分析

实验室自用LabVIEW软件与商用软件在价格上的差异源于功能与扩展包、技术支持与服务、使用场景与合规性、更新与维护、市场与定价策略、培训与教育资源及许可证管理与合规审计等方面的不同。商用软件提供更全面的功能和支持&#xff0c;确保高可靠性和合规性&#xff0c;因此价格…

奥特曼谈AI的机遇、挑战与人类自我反思:中国将拥有独特的大语言模型

奥特曼在对话中特别提到&#xff0c;中国将在这个领域扮演重要角色&#xff0c;孕育出具有本土特色的大语言模型。这一预见不仅彰显了中国在全球人工智能领域中日益增长的影响力&#xff0c;也预示着未来技术发展的多元化趋势。 ①奥特曼认为AI在提升生产力方面已显现积极作用&…

provider追加android:name的命名有哪些?

在Android中&#xff0c;为<provider>元素添加android:name属性时&#xff0c;命名应遵循Android组件的命名规范和包名的命名规范。以下是一些关于命名android:name的要点&#xff1a; 包名前缀&#xff1a;android:name属性的值通常应以包名开始&#xff0c;这是应用程序…

APP自动化测试-Appium常见操作之详讲

一、基本操作 1、点击操作 示例&#xff1a;element.click() 针对元素进行点击操作 2、初始化&#xff1a;输入中文的处理 说明&#xff1a;如果连接的是虚拟机&#xff08;真机无需加这两个参数&#xff0c;加上可能会影响手工输入&#xff09;&#xff0c;在初始化配置中…

PostgreSQL源码分析——CREATE TABLE(series)

这里分析一下建表时含有序列的时候PostgreSQL是如何创建的&#xff0c;比如下面的SQL语句。 create table t1(a int, b serial);建表时含有序列 之前分析过CREATE TABLE语句的创建过程&#xff0c;这里&#xff0c;分析一下当建表中的列有serial时是如何处理的。以下面的例句…

JupyterLab使用指南(六):JupyterLab的 Widget 控件

1. 什么是 Widget 控件 JupyterLab 中的 Widget 控件是一种交互式的小部件&#xff0c;可以用于创建动态的、响应用户输入的界面。通过使用 ipywidgets 库&#xff0c;用户可以在 Jupyter notebook 中创建滑块、按钮、文本框、选择器等控件&#xff0c;从而实现数据的交互式展…

(014)Mirror 问题汇总

文章目录 场景里面的无法检测到碰撞、刚体的同步组件异常等&#xff1f;在服务端调用 NetworkServer.Spawn之后&#xff0c;出现了客户端看不到物体情况&#xff1f; 场景里面的无法检测到碰撞、刚体的同步组件异常等&#xff1f; 如果场景是通过 Additive 的方式加载的&#…

多态性(Java)

本篇学习面向对象语言的第三个特性——多态。 目录 1、多态的概念 2、继承多态实现条件 3、重写 4、重新与重载的区别&#xff1a; 5、向上转移和向下转型 5、1向上转型&#xff1a; 5、2 向下转型 1、多态的概念 多态的概念&#xff1a;通俗来说&#xff0c;就是多种形态…

1619D New Year‘s Problem

题目链接&#xff1a;New Years Problem 从题目的描述中很容易看出来这是一道二分的题目&#xff0c;那么怎么去考虑呢&#xff1f;首先最多选n-1个商店&#xff0c;那也就是说至少有一个商店要选两个人或以上&#xff0c;因此我们的check函数可以去一个个枚举商店&#xff0c…

互联网应用主流框架整合之构建REST风格的系统

REST&#xff08;Representational State Transfer&#xff09;&#xff0c;中文译为“表述性状态转移”&#xff0c;是由Roy Fielding博士在他的博士论文中提出的一种软件架构风格&#xff0c;特别适用于网络应用的设计。REST不是一个标准&#xff0c;而是一种设计原则和约束集…

Java设置JSON字符串参数编码

1.如何在Java中创建JSON字符串 在Java中创建JSON字符串&#xff0c;我们可以使用多个库&#xff0c;其中最流行的是Jackson、Gson和org.json。以下是使用这些库创建JSON字符串的示例&#xff1a; 1.1使用Jackson库 &#xff08;1&#xff09;首先&#xff0c;确保我们的项目…

PHP 连接 Memcached 服务

PHP 连接 Memcached 服务 Memcached 是一种高性能的分布式内存对象缓存系统,通常用于缓存数据库调用、API响应或页面渲染结果,以减少服务器负载并加快网站或应用程序的响应速度。PHP 作为一种流行的服务器端脚本语言,经常与 Memcached 一起使用,以提高应用程序的性能。本文…

【CSS in Depth2精译】1.1.4 源码顺序

解决层叠冲突的最后一环叫做 源码顺序&#xff0c;有时又称为 出现顺序&#xff08;order of appearance&#xff09;。如果其他判定规则均一致&#xff0c;则样式表中后出现的、或者在页面较晚引入的样式表声明&#xff0c;将最终胜出。 也就是说&#xff0c;可以通过控制源码…

textarea标签改写为富文本框编辑器KindEditor

下载 - KindEditor - 在线HTML编辑器 KindEditor的简单使用-CSDN博客 一、 Maven需要的依赖&#xff1a; 如果依赖无法下载&#xff0c;可以多添加几个私服地址&#xff1a; 在Maven框架中加入镜像私服 <mirrors><!-- mirror| Specifies a repository mirror site to…

【iOS】nil、Nil、NULL、NSNull的区别

nil nil是指一个不存在的OC实例对象的指针&#xff0c;也就是OC实例对象的空指针 NSObject *object nil;NSString *str nil;NSURL *url nil;id object1 nil;Nil 是指OC类对象的空指针 Class Class1 Nil;Class Class2 [NSURL class];NULL C语言指针类型的空…

利用ffmpeg将任意格式的视频转码为h264编码的mp4格式视频

h264(h265)编码的mp4格式为浏览器支持的视频格式&#xff0c;即通过浏览器(chrome等)可以打开本地或在线的h264(h265)编码的mp4视频文件。 参考文档1&#xff0c;ffmpeg mp4转h264、h265命令模式 https://blog.csdn.net/shizao/article/details/108578096 2&#xff0c;JavaC…