小编Al-*_*aad的帖子

使用par()或layout()函数组合ggplot2(不在单个图中)的图?

我一直在考虑使用par()或layout()函数来组合ggplots.是否可以使用这些功能?

假设我想绘制散点图的ggplot和直方图的ggplot.我希望将这两个图组合在一起(不是在单个画面中).适用吗?

我在R中使用简单的绘图尝试了它,而没有使用ggplot函数.它确实有效.

以下是来自Quick-R的示例链接:http://www.statmethods.net/advgraphs/layout.html

# 4 figures arranged in 2 rows and 2 columns
attach(mtcars)
par(mfrow=c(2,2))
plot(wt,mpg, main="Scatterplot of wt vs. mpg")
plot(wt,disp, main="Scatterplot of wt vs disp")
hist(wt, main="Histogram of wt")
boxplot(wt, main="Boxplot of wt")

# One figure in row 1 and two figures in row 2
attach(mtcars)
layout(matrix(c(1,1,2,3), 2, 2, byrow = TRUE))
hist(wt)
hist(mpg)
hist(disp)
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用ggplot并组合情节时,我没有得到输出.

layout r par ggplot2

24
推荐指数
3
解决办法
3万
查看次数

ggplot2:如何使用不同颜色的geom_vline()

我的情节中有五(5)个geom_vline(),我希望它们有不同的颜色.有没有办法做到这一点?

这是我的代码,

library(ggplot2)

x <- seq(-7, 8, length = 90)
tvalues <- dt(x,15)

qplot(x, tvalues) + geom_polygon(fill = "purple", colour = "purple", alpha = 0.5) + 
  geom_point(fill = "purple", colour = "purple", alpha = 0.2, pch = 21) +
  geom_vline(xintercept = c(a <- c(-2.27685371,  0.01661155,  
  0.33598194,  1.92426022), mean(a)), linetype = "dashed", colour = "red") + theme_bw() + xlab(bquote(bold('Average Tensile Strength (lb/in'^'2'*')'))) +
  ylab(expression(bold(P(x)))) +
  opts(title = expression(bold("Student t Distribution")), plot.title = theme_text(size = 20, colour = "darkblue"),
       panel.border = theme_rect(size …
Run Code Online (Sandbox Code Playgroud)

statistics r ggplot2

15
推荐指数
2
解决办法
2万
查看次数

从dendextend :: circlize_dendrogram()的输出中提取簇颜色

我试图提取聚类中使用的颜色circlize_dendrogram.这是一个示例代码:

library(magrittr)
library(dendextend)

cols <- c("#009000", "#FF033E", "#CB410B", "#3B444B", "#007FFF")
dend <- iris[1:40,-5] %>% dist %>% hclust %>% as.dendrogram    

dend <- color_branches(dend, k = 5, col = cols)
dend %<>% set("labels_col", value = cols, k= 5)
dend %<>% set("labels_cex", .8)
dend %<>% set("branches_lwd", 2)

circlize_dendrogram(dend)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

以便使用提取列表簇cutree(dend, k = 5).有没有办法根据cols给定的?提取树形图中簇的颜色?我需要它来使用grid包在图中插入图例.

示例,图例:群集1 - #009000; 集群2 - #FF033E; 集群3 - #CB410B; 集群4 - #3B444B; 集群5 - #007FFF.问题circlize_dendrogram是用于群集的颜色的顺序是不同的.

虽然我可以手动执行此操作,但如果我可以自动执行此操作会很有效.如果我可以提取簇的颜色,这是可能的.

r hierarchical-clustering dendextend

10
推荐指数
2
解决办法
556
查看次数

Slidify:代码对齐

我在两列幻灯片中对齐代码时遇到问题.

在此输入图像描述

这是我的幻灯片代码,

--- &twocol

## Sample R Codes

*** =left

```{r, echo=FALSE}
options(width=30)
```


```{r, fig.height=5.5,highlight=TRUE, fig.show='hide',tidy=TRUE}
mvreg.sim <- function(xcov,beta1=matrix(c(0.7, 0.2, 0.2, 0.7), 
             nr = 2, nc = 2),  err.mu=c(0,0), 
             err.sigma=matrix(c(100,0,0,100), nr=2)){
  library(mvtnorm)
  N <- nrow(xcov)
  e <- rmvnorm(N, mean = err.mu, sigma = err.sigma)  
  y <- matrix(NA, nrow = N, ncol = 2)
  for(i in 1:N){
    y[i,] <- (xcov[i,])%*%beta1 + e[i,]
  }
  return(y)
}
```

*** =right

This is the explanation of the plot.

```{r, fig.height=5.5,highlight=TRUE,echo=FALSE}
x <- seq(0,10, …
Run Code Online (Sandbox Code Playgroud)

r slidify

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

闪亮:如何调整tabsetPanel的宽度?

这是我的网站中嵌入的应用程序.我想摆脱我的应用程序下面的滚动小部件,这是由于tabsetPanel的宽度.

我使用以下代码嵌入了应用程序:

<iframe width="800" height="480" frameborder="0" src="http://spark.rstudio.com/alstated/meanvar/"></iframe>
Run Code Online (Sandbox Code Playgroud)

应用代码:

ui.R

library(shiny)

# Define UI for application that plots random distributions 
shinyUI(pageWithSidebar(
  headerPanel(title = ""),
  sidebarPanel(
    sliderInput("size",
                "Number of Observations",
                min = 10,
                max = 200,
                value = 95),

    sliderInput("mu",
                "Mean",
                min = -100, 
                max = 100,
                value = 0),

    sliderInput("sd",
                "Standard Deviation",
                min = 1,
                max = 6,
                value = 3),

    checkboxInput(inputId = "indiv_obs",
                  label = "Show individual observations",
                  value = FALSE),

    checkboxInput(inputId = "density",
                  label = "Show density …
Run Code Online (Sandbox Code Playgroud)

r shiny

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

如何在莱迪思的panel.abline中更改回归线的大小?

好的,我一直在寻找一个功能,可以帮助我改变xyplot中回归线的大小.我试过panel.abline(reg = coef, size = 2)但它不起作用.

听到我的代码,

Plot.col <- brewer.pal(8,"Set1")[8][cut(Std.Change, c(-2.5,2.5), label = FALSE)]
Plot.ord <- rev(order(Std.Change))

coef <- coef(lm(Std.ModernC ~ Std.Change, data = Std.DataReg))
xyplot(Std.ModernC ~ Std.Change, data = Std.DataReg[Plot.ord, ], type = c("p", "g"), col = "blue",pch = 21, fill = Plot.col[Plot.ord], cex = 1.3,panel = function(...) {
  panel.xyplot(...)
  panel.abline(reg = coef, col = "blue")})
Run Code Online (Sandbox Code Playgroud)

在ggplot中,只需设置就可以很容易地改变回归线的大小 geom_abline(size = 2)

我还在学习格子,我不知道是否有这个功能,或者无论如何.

任何帮助深表感谢.

regression r lattice

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

取R中的和为for循环

这个问题可能与其他问题类似,但是当我检查它们时,它们与我正在寻找的有点不同.这是我的代码,

Data <- rbind(c(54, 55, 51), c(52, 51, 57))
WMatrix <- rbind(c(0, 1), c(1, 0)) 

for(i in 1:2){
   for(j in 1:2){
      for(t in 1:2){
      print(WMatrix[i,j]*Data[j,t]*Data[i,t+1])
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

这些代码的输出是,

[1] 0
[1] 0
[1] 2860
[1] 2601
[1] 2754
[1] 3135
[1] 0
[1] 0
Run Code Online (Sandbox Code Playgroud)

现在,我希望从循环中立即生成此输出的总和(不列出它).也就是说,循环的输出应该是11350,这是循环中所有生成的输出的总和.我知道这个问题可能很简单,但我还在学习基本的编程.我试过这个,

for(i in 1:2){
   for(j in 1:2){
      for(t in 1:2){
      print(sum(WMatrix[i,j]*Data[j,t]*Data[i,t+1]))
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

但是,输出仍然是相同的,有人可以帮助我吗?

谢谢 :)

loops for-loop r

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