text: user2005: FeaturePlot is a function in Seurat package.
  And in the vignette it is written that if we specify parameter do.return = TRUE it should return ggplot2 object. It is not working. My goal here is just to change the title of the plot. In case of violin plot I can do the following:
  VlnPlot(object = seurat_object, features.plot = id, do.return = TRUE) + labs(title = endothelial_symbols[1])
  
  But with FeaturePlot similar code fails to work:
  FeaturePlot(object = seurat_object, features.plot = id, cols.use = c("grey", "blue"),
                            reduction.use = "tsne", do.return = TRUE) + labs(title = endothelial_symbols[1])
  
  Giving the error:
  
  Error in FeaturePlot(object = seurat_object, features.plot = id, cols.use = c("grey",  : 
      non-numeric argument to binary operator
  
  Any suggestions would be greatly appreciated.
  
  user678: I tried with some data that I have and this is working for me: 
  p <- FeaturePlot(object = seurat_object, features.plot = id, cols.use = c("grey", "blue"),
                        reduction.use = "tsne", do.return = TRUE)
  
  
  lapply(p, function(x){x + labs(title = endothelial_symbols[1])})
  
  I think it is because FeaturePlot returns several ggplot objects according to the ids you put. This is returned as a list of plots so you have to iterate each one for labeling. 
  
original_text: 2005: <p><code>FeaturePlot</code> is a function in <a href="http://satijalab.org/seurat/pbmc3k_tutorial.html" rel="noreferrer">Seurat</a> package.</p>
  
  <p>And in the vignette it is written that if we specify parameter <code>do.return = TRUE</code> it should return ggplot2 object. It is not working. My goal here is just to change the title of the plot. In case of violin plot I can do the following:</p>
  
  <pre><code>VlnPlot(object = seurat_object, features.plot = id, do.return = TRUE) + labs(title = endothelial_symbols[1])
  </code></pre>
  
  <p>But with <code>FeaturePlot</code> similar code fails to work:</p>
  
  <pre><code>FeaturePlot(object = seurat_object, features.plot = id, cols.use = c("grey", "blue"),
                            reduction.use = "tsne", do.return = TRUE) + labs(title = endothelial_symbols[1])
  </code></pre>
  
  <p>Giving the error:</p>
  
  <blockquote>
    <p>Error in FeaturePlot(object = seurat_object, features.plot = id, cols.use = c("grey",  : 
      non-numeric argument to binary operator</p>
  </blockquote>
  
  <p>Any suggestions would be greatly appreciated.</p>
   678: <p>I tried with some data that I have and this is working for me: </p>
  
  <pre><code>p &lt;- FeaturePlot(object = seurat_object, features.plot = id, cols.use = c("grey", "blue"),
                        reduction.use = "tsne", do.return = TRUE)
  
  
  lapply(p, function(x){x + labs(title = endothelial_symbols[1])})
  </code></pre>
  
  <p>I think it is because FeaturePlot returns several ggplot objects according to the ids you put. This is returned as a list of plots so you have to iterate each one for labeling. </p>
  