小编lar*_*ara的帖子

如何在传单地图上添加文字?

每天我需要在地图上绘制路径并添加4,5或8分钟的文本.表示汽车从起点到目的地需要多长时间(见下图).我认为使用R中的Leaflet创建一个Shiny应用会很有帮助(代码如下所示).

我使用了leaflet.extras包中的addDrawToolbar来绘制路径,如附图所示.但我不知道也无法找到如何以与绘制路径相同的方式添加文本.解决方案并不一定要在R中.我的目标是为想要做这些事情并且不知道如何编码的人创建一个应用程序.

在此输入图像描述

library(shiny)
library(leaflet)
library(leaflet.extras)


ui = fluidPage(
      tags$style(type = "text/css", "#map {height: calc(100vh - 20px) 
      !important;}"),
      leafletOutput("map")
      )

server = function(input,output,session){
             output$map = renderLeaflet(
                 leaflet()%>%

         addTiles(urlTemplate = "http://mt0.google.com/vt/lyrs=m&hl=en&x= 
              {x}&y={y}&z={z}&s=Ga")%>%

         addMeasure(
              primaryLengthUnit = "kilometers",
              secondaryAreaUnit = FALSE
         )%>%

         addDrawToolbar(
              targetGroup='draw',

              editOptions = editToolbarOptions(selectedPathOptions = 
                    selectedPathOptions()),

              polylineOptions = filterNULL(list(shapeOptions = 
                    drawShapeOptions(lineJoin = "round", weight = 8))),

              circleOptions = filterNULL(list(shapeOptions = 
                    drawShapeOptions(),
                    repeatMode = F,
                    showRadius = T,
                    metric = T,
                    feet = F,
                    nautic = F))) %>%
        setView(lat = 45, lng …
Run Code Online (Sandbox Code Playgroud)

r leaflet shiny r-leaflet

10
推荐指数
1
解决办法
1350
查看次数

如何在Shiny中保存带有绘制形状/点的传单地图?

这个问题是如何在Shiny中保存传单地图以及在Shiny中保存传单地图的问题的后续问题.

我添加了一个工具栏,用于addDrawToolbar在leaflet.extras包中的地图上绘制形状/点.这可以让用户以交互方式绘制线条,形状...... 最后,我希望能够将绘制的形状保存为pdf或png.

我编写了以下代码,使用了问题的答案:如何在Shiny中保存传单地图.但它无助于实现我的目标.

有没有人可以帮助我?

library(shiny)
library(leaflet)
library(leaflet.extras)
library(mapview)


ui <- fluidPage(

    leafletOutput("map"),
    br(),
    downloadButton("download_pdf", "Download .pdf")
)

server <- function(input, output, session) {


     foundational_map <- reactive({

        leaflet() %>% 

          addTiles()%>%

          addMeasure(
              primaryLengthUnit = "kilometers",
              secondaryAreaUnit = FALSE
           )%>%

          addDrawToolbar(
               targetGroup='draw',

               editOptions = editToolbarOptions(selectedPathOptions = 
                                       selectedPathOptions()),

                polylineOptions = filterNULL(list(shapeOptions = 
                                        drawShapeOptions(lineJoin = "round", 
                                        weight = 3))),

                circleOptions = filterNULL(list(shapeOptions = 
                                      drawShapeOptions(),
                                      repeatMode = F,
                                      showRadius = T,
                                      metric = T,
                                      feet …
Run Code Online (Sandbox Code Playgroud)

javascript r leaflet shiny

10
推荐指数
1
解决办法
390
查看次数

使用R中的addDrawToolbar在传单地图上绘制额外的标记

我在传单地图上添加了一个工具栏,以便非编码人员可以轻松绘制标记.为此,我使用了以下R包:leaflet,leaflet.extras和shiny.

我有一些问题:

1)我添加了markerOptions(见下文)来定义红叶的图标.据我所知,你只能有一个选择.我的意思是没有办法让非编码人员从你定义的几个图标中选择与我一样的方式.是否有可能以其他方式实现?

2)单击左下方的STYLE EDITOR编辑叶子图标(见下图)后,它会切换回它本身具有的图标池,并且您要编辑的叶子图标将变为此池中的第一个图标.

实际上,如果有一种方法可以在右边的下面这个池中添加额外的图标,那么我的第一个问题就会得到解决.解决方案并不一定要在R中.

在此输入图像描述

library(shiny)
library(leaflet)
library(leaflet.extras)


ui = fluidPage(
   tags$style(type = "text/css", "#map {height: calc(100vh - 20px)!important;}"),
   leafletOutput("map")
)

server = function(input,output,session){
   output$map = renderLeaflet(
   leaflet()%>%

   addTiles(urlTemplate = "http://mt0.google.com/vt/lyrs=m&hl=en&x={x}&y={y}&z={z}&s=Ga")%>%

   addMeasure(
    primaryLengthUnit = "kilometers",
    secondaryAreaUnit = FALSE
    )%>%

   addDrawToolbar(
    targetGroup='draw',
    editOptions = editToolbarOptions(selectedPathOptions = selectedPathOptions()),

    markerOptions = filterNULL(list(markerIcon = makeIcon(iconUrl = "http://leafletjs.com/examples/custom-icons/leaf-red.png")))) %>%
  setView(lat = 45, lng = 9, zoom = 3) %>% 

  addStyleEditor(position = "bottomleft", 
                 openOnLeafletDraw = TRUE)
  )
}

shinyApp(ui,server)
Run Code Online (Sandbox Code Playgroud)

r leaflet shiny

8
推荐指数
1
解决办法
348
查看次数

作为线性回归和不必要变量的结果,R总是将NA作为系数返回吗?

我的问题是关于不必要的预测因子,即不提供任何新线性信息的变量或者是其他预测因子的线性组合的变量.如您所见,swiss数据集有六个变量.

library(swiss)
names(swiss)
# "Fertility"        "Agriculture"      "Examination"      "Education"        
# "Catholic"      "Infant.Mortality"
Run Code Online (Sandbox Code Playgroud)

现在我介绍一个新变量ec.它是线性组合ExaminationEducation.

ec <- swiss$Examination + swiss$Catholic
Run Code Online (Sandbox Code Playgroud)

当我们使用不必要的变量运行线性回归时,R会删除NA作为其他项的线性组合的项,并返回其系数.下面的命令完美地说明了这一点.

lm(Fertility ~ . + ec, swiss)

Coefficients:
 (Intercept)       Agriculture       Examination         Education            
     66.9152           -0.1721           -0.2580           -0.8709 

Catholic  Infant.Mortality    ec

  0.1041            1.0770    NA
Run Code Online (Sandbox Code Playgroud)

但是,当我们首先回归ec然后回归所有回归量时,如下所示,

lm(Fertility ~ ec + ., swiss)

 Coefficients:
 (Intercept)                ec       Agriculture       Examination           
     66.9152            0.1041           -0.1721           -0.3621           
  Education          Catholic     Infant.Mortality  
    -0.8709                NA            1.0770  
Run Code Online (Sandbox Code Playgroud)

我希望双方的系数CatholicExaminationNA.变量 …

regression r linear-regression lm coefficients

5
推荐指数
1
解决办法
1298
查看次数

在 RMarkdown 中使用 knit 和 kableExtra 包创建多个表的 For 循环

我需要在 RMarkdown 中创建多个表并使用 kableExtra 包对其进行样式设置。例如,我有鸢尾花数据集。我的第一个表显示前 20 行,第二个表显示接下来的 20 行,第三个表显示接下来的 20 行...下面是代码:

---
title: ""
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```     
```{r}
library(knitr)
library(kableExtra)

landscape(kable_styling(kable(iris[1:20, ], format = "latex", align = "c", 
     row.names = FALSE), latex_options = c("striped"), full_width = T))

landscape(kable_styling(kable(iris[21:40, ], format = "latex", align = "c", 
     row.names = FALSE), latex_options = c("striped"), full_width = T))

landscape(kable_styling(kable(iris[41:60, ], format = "latex", align = "c", 
     row.names = FALSE), latex_options = c("striped"), full_width = T))
```
Run Code Online (Sandbox Code Playgroud)

它运行良好,它返回三个表,每个表位于不同的工作表中。实际上,我有不止三个表,所以我认为使用 …

r knitr r-markdown kableextra

4
推荐指数
1
解决办法
5553
查看次数

R 数据表不会同时显示按钮和长度菜单

当您单击 DataTable 1 选项卡时,您可以在顶部看到长度菜单,这是该问题的要点。output$ex1服务器中以开头的位对该数据表进行编码。

在此处输入图片说明

实际上,我希望有用于列可见性和下载数据的按钮。需要output$ex1通过添加buttons参数对进行一些修改。然后,你最终得到output$ex2. 但现在我想念长度菜单。

在此处输入图片说明

我认为添加pageLength = 5, lengthMenu = c(5, 10, 15, 20)到从output$ex2代码开始的代码中output$ex3可以解决这个问题,我可以恢复长度菜单。但是第三个给了我和第二个完全一样的桌子。

在此处输入图片说明

1) 我怎样才能同时拥有按钮和长度菜单?

2) 如何安排按钮的位置?例如,我希望 colvis 的按钮位于下载按钮的上方。

3) 当您查看下面的代码时,您会看到 excel 也包含在按钮中:buttons = c('colvis', 'copy', 'csv', 'excel', 'pdf', 'print') 但在最后 2 个表中,您都看不到 excel 的按钮。此外,我没有收到错误消息。

我将不胜感激任何帮助。

library(shiny)

ui <- navbarPage(
  title = 'DataTable Options',
  tabPanel('DataTable 1',  DT::dataTableOutput('ex1')),
  tabPanel('DataTable with Buttons 1',  DT::dataTableOutput('ex2')),
  tabPanel('DataTable with Buttons 2',  DT::dataTableOutput('ex3'))
)



server <- function(input, output) { …
Run Code Online (Sandbox Code Playgroud)

r shiny dt

4
推荐指数
2
解决办法
3469
查看次数

RShiny打印当前页面

如何在R闪亮的Web应用程序中打印当前页面?通过使用window.print();的命令可以在HTML中实现.但我无法找到并实施其通讯员R Shiny命令.我的想法是什么,如下所示?如何在SERVER中调用html命令?

actionButton("print", "PRINT")

server <- function(input, output) {

        observeEvent(input$print, {
          window.print();
        })
}
Run Code Online (Sandbox Code Playgroud)

r shiny

3
推荐指数
1
解决办法
1351
查看次数

R Shiny radioButtons 如何改变某些选项的颜色?

ui <- fluidPage(
         radioButtons("dist", "Distribution type:",
                       c("Normal" = "norm",
                        "Uniform" = "unif",
                        "Log-normal" = "lnorm",
                        "Exponential" = "exp")))

server <- function(input, output) {}
Run Code Online (Sandbox Code Playgroud)

我希望“Normal”和“Uniform”的字体颜色与其他选项的字体颜色不同。假设前两个选项的颜色应该是红色。

谁能做到这一点?

shiny

2
推荐指数
1
解决办法
2154
查看次数

R中的正则表达式:str_extract_all

我需要R中的正则表达式方面的帮助。

library(stringr)
text <- "Detailed Description, {type:status-update,activityText:Closed,date:2018-06-01T12:00:15+0200,status:Closed}, {type:status-update,activityText:Inprogress,date:2018-06-01T12:00:15+0200,status:Inprogress}, Responsible:ABC"

str_extract_all(text, "status-update.a")
Run Code Online (Sandbox Code Playgroud)

结果是:

[[1]]
[1] "status-update,a" "status-update,a"
Run Code Online (Sandbox Code Playgroud)

以同样的方式,我输入以下代码

str_extract_all(text, "status-update[[:print:]]+}")
Run Code Online (Sandbox Code Playgroud)

得到以下内容:这意味着以下是我的预期输出

[[1]]
[1] "type:status-update,activityText:Closed,date:2018-06- 
01T12:00:15+0200,status:Closed" "type:status- 
update,activityText:Inprogress,date:2018-06- 
01T12:00:15+0200,status:Inprogress"
Run Code Online (Sandbox Code Playgroud)

只是我想提取大括号中的位,但出现以下错误:

Error in stri_extract_all_regex(string, pattern, simplify = simplify,  : 
Syntax error in regexp pattern. (U_REGEX_RULE_SYNTAX)
Run Code Online (Sandbox Code Playgroud)

regex r stringr

1
推荐指数
1
解决办法
862
查看次数