我试图在天空上绘制天体(基本上坐标等于纬度/经度).我使用函数的"aitoff"投影成功绘制了所有点coord_map,但在这种情况下,网格显示得很糟糕,即仍然显示残差水平线,其中纬度不等于零以及它们的正确投影.
我怎么能删除这些线?
以下是重现行为的代码:
library(ggplot2)
library(mapproj)
sky2 = data.frame(RA=0, Dec=0)
skyplot2 <- qplot(RA,Dec,data=sky2,xlim=c(0,360),ylim=c(-89.999,89.999),
xlab="R.A.(°)", ylab="Decl. (°)",main="Source repartition on the sky")
skyplot2 + coord_map(projection="aitoff",orientation=c(89.999,180,0)) +
scale_y_continuous(breaks=(-2:2)*30,limits=c(-89.999,89.999)) +
scale_x_continuous(breaks=(0:8)*45,limits=c(0,360),
labels=c("","","","","","","","",""))
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用特定投影(称为 aitoff)在地图上绘制 ggplot2 (v3.3.2) 数据点,这对于天空图尤其有用。
这样做时,图会在 x 轴上“裁剪”,即轴的边缘位于图的外部。我尝试了一些事情(例如调整边距),但没有成功。你能帮忙让这部分情节可见吗?
这是重现问题的代码,即位于 (0,0) 的点不可见。
skydata <- data.frame(RA=c(0,180,360), Dec=c(0,10,20))
ggplot(skydata) +
geom_point(aes(RA,Dec)) +
coord_map(projection="aitoff",orientation=c(90,180,0)) +
scale_y_continuous(breaks=(-2:2)*30,limits=c(-90,90)) +
scale_x_continuous(breaks=(0:8)*45,limits=c(0,360), labels=c("","","","","","","","","")) +
labs(x="R.A.(°)", y="Decl. (°)",title="Map of the sky")
Run Code Online (Sandbox Code Playgroud)
我希望我说得够清楚了……非常感谢!
我正在使用ggplot 2.1.0来绘制直方图,并且我对直方图箱有意想不到的行为.我在这里给出了一个左闭合箱的例子(即[0,0.1 [],其宽度为0.1).
mydf <- data.frame(myvar=c(-1,-0.5,-0.4,-0.1,-0.1,0.05,0.1,0.1,0.25,0.5,1))
myplot <- ggplot(mydf, aes(myvar)) + geom_histogram(aes(y=..count..),binwidth = 0.1, boundary=0.1,closed="left")
myplot
ggplot_build(myplot)$data[[1]]
Run Code Online (Sandbox Code Playgroud)
在这个例子中,人们可能期望值-0.4在bin [-0.4,-0.3 [,但它在([神秘地)在bin [-0.5,-0.4 [.值-0.1的值相同,它落在[-0.2,-0.1 [而不是[-0.1,0 [...等].
这里有什么东西我不完全理解(特别是新的"中心"和"边界"参数)?或者是ggplot2在那里做奇怪的事情?
在此先感谢,最好的问候,Arnaud