小编And*_*eas的帖子

避免闪亮的情节双重刷新

在一个闪亮的情节中,我试图突出显示与点击点匹配的点(基于nearPoints()和click).

它有点工作.但是,闪亮应用程序的反应部分会刷新两次,第二次迭代似乎会清除点击的信息.

如何避免第二次刷新应用程序?

这是MWE:

library("Cairo")
library("ggplot2")
library("shiny")

ui <- fluidPage(
  fluidRow(
    titlePanel('Phenotype Plots')
  ),

  fluidRow(
    uiOutput("plotui")
  ),

  hr(),

  fluidRow(

    wellPanel(
      h4("Selected"),
      tableOutput("info_clicked")
      ##dataTableOutput("info_clicked") ## overkill here
    )
  )
)


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

  selected_line <-  reactive({
    nearPoints(mtcars, input$plot_click,
               maxpoints = 1,
               addDist = TRUE)
  })

  output$plotui <- renderUI({
      plotOutput("plot", height=600,
        click = "plot_click"
      )
    })

  output$plot <- renderPlot({

    p <- ggplot(mtcars) +
      facet_grid(am ~ cyl) +
      theme_bw() +
      geom_point(aes(x=wt, y=mpg))

    sline <- selected_line()
    if (nrow(sline) > 0) { …
Run Code Online (Sandbox Code Playgroud)

r shiny

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

表头使用ggplot2

我想在ggplot2中复制在LaTeX/pgf中完成的组合表/绘图.

这是原始表/情节:

在此输入图像描述

这是我使用ggplot2的距离:

在此输入图像描述

还有一些小问题(?),但我的主要问题是:如何添加表头?

它应该与元素正确对齐.

理想情况下,它也会模仿书签的外观,就像在原始示例中使用水平线一样.

有任何想法吗?

这是我到目前为止使用的代码:

tmptable <-
    data.frame(Method=c("label", "svlabel", "libor", "rpirat", "Frankfurt", "high"),
               p=c(0.03, 0.38, 0.27, 0.31, 0.05, 0.36),
               p_lo=c(-0.05, 0.34, 0.21, 0.24, -0.03, 0.32),
               p_hi=c(0.11, 0.41, 0.33, 0.38, 0.13, 0.41))
plotPointsCIinMatrix(tmptable)
Run Code Online (Sandbox Code Playgroud)

有了这个功能:

plotPointsCIinMatrix <- function(data,
                                 cols=NULL,
                                 .label=1,
                                 .point_estimate=2,
                                 .ci_lo=3,
                                 .ci_hi=4,
                                 .digits=2) {
  if (!require("ggplot2"))
      stop("Need package 'ggplot2'")
  if (!require("reshape"))
      stop("Need package 'reshape'")
  if (!require("gridExtra"))
      stop("Need package 'gridExtra'")

  ## keep the order
  data[,.label] <- factor(data[,.label], levels=rev(unique(data[,.label])))

  ## reshape data for table plotting
  table_df <- data.frame(label=data[,.label],
                         point_estimate=data[,.point_estimate],
                         ci=paste0("[", …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

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

让git忽略PDF文件中的日期

第一:我知道一般性意见:不要跟踪生成的文件.

说,我想跟踪生成的PDF并让git忽略写入PDF的日期.这意味着,如果唯一的区别是日期信息,我希望git将两个PDF视为相同.

我尝试的是一个过滤器 - 在其干净的部分 - 将日期设置为某个任意值.

(---评论----
基本上,过滤器确实如此:

## dump the pdf metadata to a file and replace the dates
pdftk "$FILENAME" dump_data | sed -e '{N;s/Date\nInfoValue: D:.*/Date\nInfoValue: D:19790101072619/}' > "$TMPFILE"

## update the pdf metadata
pdftk "$FILENAME" update_info "$TMPFILE" output "$TMPFILE2"
Run Code Online (Sandbox Code Playgroud)

)---结束评论----

过滤器工作(提交的pdf将日期设置为我的任意值)但我遇到了从git存储库重新检出的文件,其中'clean'过滤器结束时修改后的状态

所以,我的过滤器显然不是我想要做的.

我的问题是:
1)我可以使用聪明的过滤方法来获取git完全忽略PDF中的日期值吗?如何?

2)如果不是过滤器,那么正确的方法是什么?

git

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

knitr Rmd到md和YAML标题

我使用knitr从Rmd渲染md.YAML标题:output在该过程中不更改.这是有意的吗?在md文件的所有输出都不再是md之后.

举个例子(请原谅糟糕的格式 - 我不知道如何正常工作)

---
output:
  md_document:
    variant: markdown_github
---

# Test Document

This is a test document.
Run Code Online (Sandbox Code Playgroud)

被渲染knit(test.Rmd)

---
output:
  md_document:
    variant: markdown_github
---

# Test Document

This is a test document.
Run Code Online (Sandbox Code Playgroud)

我想念什么吗?

r knitr

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

magit over tramp:重用 ssh 连接

magit 似乎为每个命令打开一个新的 ssh 连接。这变得非常烦人,尤其是在暂存更多块时,这需要花费大量时间来为每个块建立连接。

(在 shell 中,我通过 ./ssh/config 启用了持久的 ssh 连接)

我不确定这是魔术师还是流浪汉。

但我的问题是:

如何让 magit 重用 ssh 连接?

编辑:

客户是

  • 流浪汉 2.3.5.26.2
  • GNU Emacs 26.1.91
  • debian(测试)
  • 这是流浪汉配置
    (add-to-list 'tramp-remote-path 'tramp-own-remote-path)
    (setq tramp-default-method "ssh")
    (setq tramp-inline-compress-start-size 1000000)
Run Code Online (Sandbox Code Playgroud)
  • 这是我的 .ssh/config 的相关部分
  ## generally re-use existing connections
  Host *
      ControlMaster auto
      ControlPath ~/.ssh/sockets/%r@%h-%p
      ControlPersist 600

  Host myhost1
       HostName 111.11.11.1
       User myuser
       ForwardX11 yes
       ForwardX11Timeout 596h
       IdentityFile ~/.ssh/id_rsa
       IdentitiesOnly yes
       ForwardAgent yes
       SendEnv LC_*
       ServerAliveInterval 300
Run Code Online (Sandbox Code Playgroud)

服务器是RHEL 7.6(迈波)

emacs tramp magit

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

重新排序树状图

我想用reorder.dendrogram对树形图进行重新排序,但是无法绕过如何设置参数.

树形图有一个"异常值"分支,我想转移到另一边.

我可以通过这个剪切/合并调用来做到这一点,但肯定可以重新排序吗?

这是树形图:

tdro <- structure(list(structure(9L, members = 1L, height = 0, label = "leaf1", leaf = TRUE, class = "dendrogram"), 
structure(list(structure(list(structure(list(structure(list(
    structure(15L, label = "leaf2", members = 1L, height = 0, leaf = TRUE, class = "dendrogram"), 
    structure(14L, label = "leaf3", members = 1L, height = 0, leaf = TRUE, class = "dendrogram")), members = 2L, midpoint = 0.5, height = 24.8381484584436, class = "dendrogram"), 
    structure(list(structure(13L, label = "leaf4", members = 1L, height = 0, leaf = TRUE, …
Run Code Online (Sandbox Code Playgroud)

r

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

使用gtable对象arrangeGrob

/sf/answers/930711631/,我学会了如何安排两个具有对齐绘图区域的图.

我的问题是:我怎样才能得到被安排的地块的对象?

例:

require(ggplot2)
require(gridExtra)

A <- ggplot(CO2, aes(x=Plant)) + geom_bar() +coord_flip() 
B <- ggplot(CO2, aes(x=Type)) + geom_bar() +coord_flip() 

gA <- ggplot_gtable(ggplot_build(A))
gB <- ggplot_gtable(ggplot_build(B))
maxWidth = grid::unit.pmax(gA$widths[2:3], gB$widths[2:3])
gA$widths[2:3] <- as.list(maxWidth)
gB$widths[2:3] <- as.list(maxWidth)

## works:
grid.arrange(gA, gB, ncol=1)

## does not work:
theplot <- grid.arrange(gA, gB, ncol=1, plot=FALSE)
Run Code Online (Sandbox Code Playgroud)

r ggplot2 gridextra

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

R提取坐标由ggplot2 :: stat_density_2d绘制

我正在寻找由此产生的等高线的坐标ggplot2::geom_density_2d.

我是在x/y坐标的(矩阵)列表之后.每个轮廓线一个.

这应该与contourLines给出的相似,但我无法得到理想的结果.

这是一些示例代码 ?stat_density2d

 m <- ggplot(faithful, aes(x = eruptions, y = waiting)) +
  geom_point() +
  xlim(0.5, 6) +
  ylim(40, 110)
 m + geom_density_2d()
Run Code Online (Sandbox Code Playgroud)

r ggplot2

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

survfit中的R公式

我在公式、环境和survfit().

对于 ,事情运行良好,lm()但对于 ,却失败了survfit()

一般问题陈述:

我正在对一些数据拟合一系列公式。因此,我使用作为变量传递的公式来调用建模函数。稍后,我想使用拟合对象中的公式。

(从我天真的角度来看,问题来自于survfit没有记录环境。)

详细示例

预期行为如lm()

library("plyr")

preds <- c("wt", "qsec")

f <- function() {
  lm(mpg ~ wt, data = mtcars)
}

fits <- alply(preds, 1, function(pred)
{
  modform <- reformulate(pred, response = "mpg")

  lm(modform, data = mtcars)
})

fits[[1]]$call$formula
##modform
formula(fits[[1]])
## mpg ~ wt
## <environment: 0x1419d1a0>
Run Code Online (Sandbox Code Playgroud)

即使fits[[1]]$call$formula解决了modform我仍然可以得到原始公式formula(fits[[1]])

但事情失败了survfit()

library("plyr")
library("survival")

preds <- c("resid.ds", "rx", "ecog.ps")

fits <- 
  alply(preds, …
Run Code Online (Sandbox Code Playgroud)

r formula survival-analysis

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

标签 统计

r ×7

ggplot2 ×3

emacs ×1

formula ×1

git ×1

gridextra ×1

knitr ×1

magit ×1

shiny ×1

survival-analysis ×1

tramp ×1