2014-10-08 83 views
0

我有一些数据需要以图形方式显示。这里是什么样子:使用此命令R - 调整x轴的y值

data<- c(0.119197746, 0.054207788, 0.895580411, 0.64861727, 0.143249592, 
0.284314897, 0.070027632, 0.297172433, 0.183569184, 0.713896071, 
1.942425326, 1) 

barplot(data, main="Ratio of Lipidated and Unlipidated LC3 I & II forms\nNormalized 
to GAPDH", names.arg = c("PT250", "PT219", "PT165", "PT218", "PT244", "PT253", "PT279", "PT281",  
"PT240", "PT262", "PT264", "CCD"), ylab = "Fold LC3 II/LC3I/GAPDH") 

我公司生产的此图:

Graph

我想X轴在1个位置等等所有小于1的值都将显示为下拉条。我可以通过简单地从所有值中减去1并再次绘图来实现期望的效果,但是这会导致y轴上的数字不准确。有什么方法可以让R画出小于1的值作为下拉条?

+0

我不知道你的数据是什么样子。 'data $ LC3.Ratio.GAPDH'是一个包含相应小节高度的向量吗? – blakeoft 2014-10-08 20:41:03

+0

从一切减去1,然后适当调整y轴看起来像一个很好的和简单的解决方案。不知道为什么你想要别的东西... – Gregor 2014-10-08 21:10:52

+0

@Gregor我实际上已经探索过这个解决方案,但发现调整y轴与移动x轴一样令人困惑。如果你知道如何改变y轴上的值,我会很乐意接受这个解决方案。 – Slavatron 2014-10-08 21:45:15

回答

1

带自定义轴的解决方案。

barplot(data - 1, main="Ratio of Lipidated and Unlipidated LC3 I & II forms\nNormalized 
to GAPDH", names.arg = c("PT250", "PT219", "PT165", "PT218", "PT244", "PT253", "PT279", "PT281",  
         "PT240", "PT262", "PT264", "CCD"), ylab = "Fold LC3 II/LC3I/GAPDH", 
     axes = F, ylim = c(-1, 1) 
my_labs <- seq(-1, 1, by = 0.5) 
axis(side = 2, at = my_labs, labels = my_labs + 1) 

enter image description here