Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何将一个数据集映射到同一绘图上的左下xy轴,将另一个映射到右上xy轴?_R_Ggplot2 - Fatal编程技术网

R 如何将一个数据集映射到同一绘图上的左下xy轴,将另一个映射到右上xy轴?

R 如何将一个数据集映射到同一绘图上的左下xy轴,将另一个映射到右上xy轴?,r,ggplot2,R,Ggplot2,我试图把两个数据集放在同一个图中。我想要一个数据集映射到底部rleft xy轴,另一个数据集映射到右上xy轴 # Bottom-Left data set PCscores <- data.frame(sample = paste("sample",1:10,sep="_"), PC1 = c(-9,-8,-10,0,1,2,18,20,19,21), PC2 = c(-8,-9,-10,2,0,

我试图把两个数据集放在同一个图中。我想要一个数据集映射到底部rleft xy轴,另一个数据集映射到右上xy轴

# Bottom-Left data set
PCscores <- data.frame(sample = paste("sample",1:10,sep="_"), 
                       PC1 = c(-9,-8,-10,0,1,2,18,20,19,21),
                       PC2 = c(-8,-9,-10,2,0,1,21,19,18,19))


# Upper-Right data set
loadings <- data.frame(snps = letters[1:4], 
                       pc1 = c(0.7,0.8,-0.5,-1), 
                       pc2 = c(0.8,0.7,-1,-0.7),
                       FROM=0,
                       TO=0)

ggplot2
中是否可以进行这种“双重”映射?如果不可以,也欢迎使用基本
R
解决方案。

您希望这是什么样子?你想要两套x轴和两套y轴?我不明白这个问题。点被映射以获得您提供的坐标。你期望得到什么结果?哪个数据集应该位于顶部/右侧?我希望箭头具有与单独绘制时相同的比例
ggplot(数据=加载)+geom_段(aes(x=FROM,y=to,xend=pc1,yend=pc2),arrow=arrow()+xlab(NULL)+ylab(NULL)
谢谢!现在很清楚,您可以使用
dput
放置实际数据吗?是不是复杂多了?在左上角或右下角有样品吗?你认为这到底是什么样的?你想要两套x轴和两套y轴?我不明白这个问题。点被映射以获得您提供的坐标。你期望得到什么结果?哪个数据集应该位于顶部/右侧?我希望箭头具有与单独绘制时相同的比例
ggplot(数据=加载)+geom_段(aes(x=FROM,y=to,xend=pc1,yend=pc2),arrow=arrow()+xlab(NULL)+ylab(NULL)
谢谢!现在很清楚,您可以使用
dput
放置实际数据吗?是不是复杂多了?样品在左上角还是右下角?
ggplot(data = PCscores, aes(PC1,PC2)) + 
  geom_point() +
  geom_segment(data = loadings, 
               aes(x = FROM, y = TO, xend = pc1, yend = pc2), arrow = arrow())