R在标签区域中绘图
是否可以在x-“标签轴”下方绘制形状。例如:R在标签区域中绘图,r,shiny,plotly,R,Shiny,Plotly,是否可以在x-“标签轴”下方绘制形状。例如: h <- mtcars %>% group_by(gear) %>% summarise(mpg = mean(mpg)) plot_ly( h, name = "20", type = "waterfall", x = ~gear, textposition = "outside", text = c("Gear 3", "
h <- mtcars %>% group_by(gear) %>% summarise(mpg = mean(mpg))
plot_ly(
h, name = "20", type = "waterfall",
x = ~gear,
textposition = "outside",
text = c("Gear 3", "Gear 4", "Gear 5"),
y= ~mpg)
h%分组依据(档位)%>%汇总(mpg=平均值(mpg))
阴谋(
h、 name=“20”,type=“瀑布”,
x=~齿轮,
textposition=“外部”,
text=c(“3档”、“4档”、“5档”),
y=~mpg)
有下面这样的红色盒子。理想情况下,我希望这些盒子彼此对齐,并且与上面的盒子对齐,但我的绘画技能是不存在的
谢谢。您可以使用
添加注释
将框放置在绘图区域之外。经过反复试验后:
yref=“纸张”
y=0
。(将框与x轴对齐)
yshift=-xxxx
移动方框。(将箱子移到外面)
布局增加底部边距(边距=列表(b=xxxx))
(为方框留出空间)
library(plotly)
h <- mtcars %>% group_by(gear) %>% summarise(mpg = mean(mpg))
plot_ly(
h, name = "20", type = "waterfall",
x = ~gear,
textposition = "outside",
text = c("Gear 3", "Gear 4", "Gear 5"),
y= ~mpg) %>%
add_annotations(
x = ~gear,
y = 0,
yshift = -100,
bgcolor = I("red"),
bordercolor = I("black"),
width = 200,
height = 20,
yref = "paper",
text = c("Gear 3", "Gear 4", "Gear 5"),
showarrow = FALSE
) %>%
layout(margin = list(b = 100))
library(plotly)
h%分组单位(齿轮)%>%汇总(mpg=平均值(mpg))
阴谋(
h、 name=“20”,type=“瀑布”,
x=~齿轮,
textposition=“外部”,
text=c(“3档”、“4档”、“5档”),
y=~mpg)%>%
添加注释(
x=~齿轮,
y=0,
yshift=-100,
bgcolor=I(“红色”),
bordercolor=I(“黑色”),
宽度=200,
高度=20,
yref=“纸张”,
text=c(“3档”、“4档”、“5档”),
showarrow=FALSE
) %>%
布局(边距=列表(b=100))
太棒了!非常感谢。如果x是离散的,然后对一些x变量进行可能的分组,是否可以做类似的事情。如果我显示所有三个绿色框,但它们的x值分别为“Gear3”、“Gear4”和“Gear5”。然而,除此之外,只有两个红色框。一个框用于齿轮3和齿轮4(跨越其整个宽度),另一个框用于齿轮5?Hi@mfindinge。这两件事都是可能的。试试看。(;我刚刚勾选了。1.离散x轴没有问题。2.如果您只需要两个类别的框,只需说x=c(1,3),然后调整宽度,并使用xhift,例如xhift=c(50,-50)将一个框向右移动,另一个向左移动。我可以使用索引顺序作为x值。但是,我希望框为:1)根据每组离散x值动态调整宽度。2) 动态调整每个文本的高度(可能具有一些最小/最大大小)。1号在窗口/应用程序调整大小时调整大小,这也将影响2号。有没有办法将宽度和高度链接到数据库大小?编辑:没有看到您的评论,将首先阅读。(:尝试一下。以前没有这样做过。不确定动态高度和宽度可以做多少。但是您可以将高度链接到数据库的大小,例如高度=~2*mpgI会处理它!可能会为宽度创建一个函数。非常感谢!