R语言shiny可视化

2024-03-12 17:32
文章标签 语言 可视化 shiny

本文主要是介绍R语言shiny可视化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述
程序代码:

library(shiny)
library(dplyr)
library(plotly)
library(readxl)
library(DT)# we read and prepare the data in the same way as in a normal script
dataFromBO <-read_xlsx(path = "Book2.xlsx",sheet = "Sheet1")result <- dataFromBO %>% # filtering stepfilter(Basis == "Gross", Maturity == "CUY") %>%group_by(Year,Maturity,Rein,CoverType,LOB,Combined) %>%summarise(Premium = sum(`Premium`),Profit = sum(`MEAN Result`),SA_TVAR_99 = -sum(`SA_TVAR_99`),DIV_TVAR_99 = -sum(`DIV_TVAR_99`),Div_B = 1-sum(`DIV_TVAR_99`)/sum(`SA_TVAR_99`))EL <-read_xlsx(path = "Book3.xlsx",sheet = "EL")# user-interface is defined here
# we basically say where each graphic should go
ui <- fluidPage(fluidRow(column(width = 6,plotlyOutput("bar_chart")),column(width = 6,plotlyOutput("bubble_chart"))),fluidRow(column(width = 12,dataTableOutput("table")))
)# we define the graphics here
server <- function(input, output, session) {# this means that output with id "table" will produce a datatable with results# it's included in the UI part through dataTableOutput("table")output$table <- renderDataTable({datatable(result)})output$bar_chart <- renderPlotly({EL2 <- EL %>%group_by(Return) %>%summarise(Total = sum(TVaR))EL3 <- inner_join(EL, EL2, by = "Return")EL3 %>%mutate(Contribution = TVaR / Total) %>%plot_ly(x= ~Return,y = ~Contribution,name = ~LOB_NAME) %>%add_bars() %>%layout(title = 'Line of Business Marginal Contribution by Return Period',xaxis =list(title = "Return Period",showgrid = FALSE,categoryarray= sort(unique(EL3$Sort_Return)),categoryorder = "array"),yaxis = list(title = "Marginal Contribution",showgrid = FALSE),barmode= "stack")})output$bubble_chart <- renderPlotly({plot_ly(result,x = ~DIV_TVAR_99,y = ~Div_B,text = ~Combined,type = 'scatter',mode = 'markers', size = ~Premium,color = ~Year, colors = "Paired",marker = list(opacity = 0.5, symbol= "circle",sizemode = 'diameter',line = list(width = 2, color = "#FFFFFF"))) %>%layout(title = 'SCOR US: 2017 VS 2018 Risk Profile evolution',xaxis = list(title = 'x',gridcolor = 'rgb(255, 255, 255)',range = c(0, 900000000),zerolinewidth = 1,ticklen = 10,gridwidth = 2),yaxis = list(title = 'Div_Benefit',gridcolor = 'rgb(255, 255, 255)',range = c(0, 1.2),zerolinewidth = 1,ticklen = 5,gridwith = 2),showlegend = TRUE)})
}# start the app
shinyApp(ui, server)

参考官网资料:https://shiny.rstudio.com/help/

这篇关于R语言shiny可视化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/802034

相关文章

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

Go语言中Recover机制的使用

《Go语言中Recover机制的使用》Go语言的recover机制通过defer函数捕获panic,实现异常恢复与程序稳定性,具有一定的参考价值,感兴趣的可以了解一下... 目录引言Recover 的基本概念基本代码示例简单的 Recover 示例嵌套函数中的 Recover项目场景中的应用Web 服务器中

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)

《使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)》字体设计和矢量图形处理是编程中一个有趣且实用的领域,通过Python的matplotlib库,我们可以轻松将字体轮廓... 目录背景知识字体轮廓的表示实现步骤1. 安装依赖库2. 准备数据3. 解析路径指令4. 绘制图形关键

Go语言中使用JWT进行身份验证的几种方式

《Go语言中使用JWT进行身份验证的几种方式》本文主要介绍了Go语言中使用JWT进行身份验证的几种方式,包括dgrijalva/jwt-go、golang-jwt/jwt、lestrrat-go/jw... 目录简介1. github.com/dgrijalva/jwt-go安装:使用示例:解释:2. gi

Go 语言中的 Struct Tag 的用法详解

《Go语言中的StructTag的用法详解》在Go语言中,结构体字段标签(StructTag)是一种用于给字段添加元信息(metadata)的机制,常用于序列化(如JSON、XML)、ORM映... 目录一、结构体标签的基本语法二、json:"token"的具体含义三、常见的标签格式变体四、使用示例五、使用

8种快速易用的Python Matplotlib数据可视化方法汇总(附源码)

《8种快速易用的PythonMatplotlib数据可视化方法汇总(附源码)》你是否曾经面对一堆复杂的数据,却不知道如何让它们变得直观易懂?别慌,Python的Matplotlib库是你数据可视化的... 目录引言1. 折线图(Line Plot)——趋势分析2. 柱状图(Bar Chart)——对比分析3

使用Vue-ECharts实现数据可视化图表功能

《使用Vue-ECharts实现数据可视化图表功能》在前端开发中,经常会遇到需要展示数据可视化的需求,比如柱状图、折线图、饼图等,这类需求不仅要求我们准确地将数据呈现出来,还需要兼顾美观与交互体验,所... 目录前言为什么选择 vue-ECharts?1. 基于 ECharts,功能强大2. 更符合 Vue

Go语言使用slices包轻松实现排序功能

《Go语言使用slices包轻松实现排序功能》在Go语言开发中,对数据进行排序是常见的需求,Go1.18版本引入的slices包提供了简洁高效的排序解决方案,支持内置类型和用户自定义类型的排序操作,本... 目录一、内置类型排序:字符串与整数的应用1. 字符串切片排序2. 整数切片排序二、检查切片排序状态: