【发布时间】:2023-03-16 01:16:02
【问题描述】:
我正在尝试在R中生成条形图,但是由于y轴值非常接近,因此图表没有差异。
有人可以帮我吗?
这是我用来生成图表的数据。
rede <- c("Wifi", "Wifi(AB)", "Wifi(AB) + 4G(AB)", "Wifi(AB) + 4G(B)", "4G(AB)")
disp <- c(0.9981663483026838, 0.9979983253954591, 0.9983305230561498, 0.9981898613052699, 0.9980460877265795)
down <- c(16.062788868489800, 17.534669535778500, 14.624618028127900, 15.85681496583588, 17.116271515163100)
dados <- data.frame("Ref" = rede, "Disponibilidade" = disp, "Downtime" = down)
ggplot(dados) +
aes(
x = Ref,
fill = Disponibilidade,
weight = Disponibilidade
) +
geom_bar(position = "fill") +
scale_fill_viridis_c(option = "plasma", direction = 1) +
labs(
x = "Redes",
y = "Valores",
title = "Gráfico Disponibilidade"
) +
theme_minimal() +
theme(
plot.title = element_text(size = 18L,
face = "bold",
hjust = 0.5)
)
【问题讨论】:
-
请分享您用于创建图表的代码。
-
你可能想看看
coord_cartesian -
帮助你的究竟是什么?如果这就是你的数据,那么它就是这样——你无能为力来改变没有太大差异的事实。也许您想更改为不同类型的图表,但您应该使用哪种类型实际上取决于可视化的上下文和目的,并且变得主观
-
现在你已经发布了你的代码(尽管现在作为一个答案),我可以看到你已经使用了
geom_bar,默认情况下它会计算,而不是值。然后,您通过添加position = "fill"加强了该设置,这确保所有条形都堆叠到 1。您没有告诉 ggplot 在 y 轴上放置其他任何东西,我不确定您想要什么无论如何,在那个轴上。无论如何,我关于您要更改的内容以及是否需要我们做出决定的问题仍然适用 -
@camille 首先感谢您的帮助 :) 我希望 y 轴值的差异在条形图中更加明显