R:自动缩放图表时如何忽略形状';s轴在绘图中?
我有一张x轴为日期的绘图图。我添加了一个矩形来突出显示指定的日期段。有时,此日期周期将位于图表中显示的数据的日期范围内,在这种情况下,没有问题。图表显示正常。但是,日期周期可能超出图表中的日期范围(或者重叠,部分时间段超出图表中的日期范围)。在这种情况下,生成图表时,x轴会自动缩放以显示完整的矩形以及数据(或轨迹) 这不是我想要的。我希望它只在数据(跟踪)的日期范围内自动缩放(好像矩形不存在),但在图表的背景中添加矩形。如果用户手动缩小,他们应该能够看到完整的矩形,包括位于数据之外的部分,但这不应该是默认值 请参见下面的代码作为示例。这是代码的编辑版本,取自此处: 数据的日期范围为1967-2015年。x轴的自动缩放应仅基于此。但是,由于其中一个矩形的x坐标为1940和1945,因此x轴会自动缩放到1940-2015,以显示整个矩形,从而在1940和1967年之间留下很大的空白,没有数据。我希望这样,如果用户手动缩小到1940-2015的比例,这就是他们看到的,但是自动缩放应该忽略矩形,默认范围为1967-2015R:自动缩放图表时如何忽略形状';s轴在绘图中?,r,charts,plotly,r-plotly,R,Charts,Plotly,R Plotly,我有一张x轴为日期的绘图图。我添加了一个矩形来突出显示指定的日期段。有时,此日期周期将位于图表中显示的数据的日期范围内,在这种情况下,没有问题。图表显示正常。但是,日期周期可能超出图表中的日期范围(或者重叠,部分时间段超出图表中的日期范围)。在这种情况下,生成图表时,x轴会自动缩放以显示完整的矩形以及数据(或轨迹) 这不是我想要的。我希望它只在数据(跟踪)的日期范围内自动缩放(好像矩形不存在),但在图表的背景中添加矩形。如果用户手动缩小,他们应该能够看到完整的矩形,包括位于数据之外的部分,但这不
library(plotly)
fig <- plot_ly(economics, x = ~date, y = ~uempmed, name = "unemployment")
# add shapes to the layout
fig <- layout(fig, title = 'Highlighting with Rectangles',
shapes = list(
list(type = "rect",
fillcolor = "blue", line = list(color = "blue"), opacity = 0.3,
x0 = "1940-01-01", x1 = "1945-01-01", xref = "x",
y0 = 0, y1 = 1, yref = "paper"),
list(type = "rect",
fillcolor = "blue", line = list(color = "blue"), opacity = 0.2,
x0 = "2000-01-01", x1 = "2005-01-01", xref = "x",
y0 = 0, y1 = 1, yref = "paper")))
fig
library(plotly)
无花果
library(plotly)
fig <- plot_ly(economics, x = ~date, y = ~uempmed, name = "unemployment")
minx <- min(economics$date)
maxx <- max(economics$date)
x_axis <- list(
range = c(minx,maxx)
)
# add shapes to the layout
fig <- layout(fig, xaxis= x_axis, title = 'Highlighting with Rectangles',
shapes = list(
list(type = "rect",
fillcolor = "blue", line = list(color = "blue"), opacity = 0.3,
x0 = "1940-01-01", x1 = "1945-01-01", xref = "x",
y0 = 0, y1 = 1, yref = "paper"),
list(type = "rect",
fillcolor = "blue", line = list(color = "blue"), opacity = 0.2,
x0 = "2000-01-01", x1 = "2005-01-01", xref = "x",
y0 = 0, y1 = 1, yref = "paper")),
xaxis = list(range=c(as.Date("1980-01-01"),as.Date("2000-01-01")))
)
fig