华夫饼图不显示一组
Waffle plot does not show one group
我使用 library(waffle)
得到了下图
我的问题是没有出现姓氏组。我使用的代码如下
counts<-c(135.92, 15.98, 14.97, 14.15, 5.82, 11.82, 0.07 )
counts_names<-sprintf("%s (%s)", c("Coal", "Gas", "Wind", "Hydro", "Grid-scalar solar", "Rooftop solar", "Storage systems"),
scales::percent(round(counts/sum(counts), 4)))
names(counts)<-counts_names
Generation_graph<-waffle(counts)+ scale_fill_tableau(name=NULL)
我怎样才能得到我的原始图表,右边有七个组
更新:阅读其中一条评论我注意到,包括选项 labels
使我能够保留包含所有名称的原始图表。
Generation_graph<-waffle(counts)+ scale_fill_tableau(name=NULL, labels=counts_names)
问题是你的第七类的价值太小了,无法出现在情节中。最后一个 non-labbeled 组简单地反映了 waffle 默认添加的“方块”以“填充”最后一列。
根据您要实现的目标,有多种选择:
library(waffle)
#> Loading required package: ggplot2
library(ggthemes)
counts<-c(135.92, 15.98, 14.97, 14.15, 5.82, 11.82, 0.07)
counts_names<-sprintf("%s (%s)", c("Coal", "Gas", "Wind", "Hydro", "Grid-scalar solar", "Rooftop solar", "Storage systems"),
scales::percent(round(counts/sum(counts), 4)))
names(counts)<-counts_names
- 您可以通过
colors
参数设置颜色。在这种情况下,最后一个类别将出现在图例中,但不会出现在图中。还。在这种情况下,最后一列未填满。
waffle(counts, colors = tableau_color_pal()(length(counts)))
- 您可以使用
ceiling()
而不是使用原始数据。因为你的最后一类在情节和图例中都有体现。
waffle(ceiling(counts), colors = tableau_color_pal()(length(counts)))
- 最后,如果你要填写最后一列,你可以使用
ceiling()
,让 waffle
选择颜色并使用 scale_fill_manual
: 进行验证
waffle(ceiling(counts)) + scale_fill_tableau()
您可以使用 scale_fill_manual()
来获取您要查找的内容
library(ggthemes)
library(waffle)
counts<-c(135.92, 15.98, 14.97, 14.15, 5.82, 11.82, 0.07 )
counts_names<-sprintf("%s (%s)", c("Coal", "Gas", "Wind", "Hydro", "Grid-scalar solar", "Rooftop solar", "Storage systems"),
scales::percent(round(counts/sum(counts), 4)))
names(counts)<-counts_names
Generation_graph<-waffle(counts) +
scale_fill_manual(values = c("red", "blue", "green", "purple", "pink", "yellow", "orange", "blue"),
labels = counts_names,
drop = TRUE)
我使用 library(waffle)
我的问题是没有出现姓氏组。我使用的代码如下
counts<-c(135.92, 15.98, 14.97, 14.15, 5.82, 11.82, 0.07 )
counts_names<-sprintf("%s (%s)", c("Coal", "Gas", "Wind", "Hydro", "Grid-scalar solar", "Rooftop solar", "Storage systems"),
scales::percent(round(counts/sum(counts), 4)))
names(counts)<-counts_names
Generation_graph<-waffle(counts)+ scale_fill_tableau(name=NULL)
我怎样才能得到我的原始图表,右边有七个组
更新:阅读其中一条评论我注意到,包括选项 labels
使我能够保留包含所有名称的原始图表。
Generation_graph<-waffle(counts)+ scale_fill_tableau(name=NULL, labels=counts_names)
问题是你的第七类的价值太小了,无法出现在情节中。最后一个 non-labbeled 组简单地反映了 waffle 默认添加的“方块”以“填充”最后一列。
根据您要实现的目标,有多种选择:
library(waffle)
#> Loading required package: ggplot2
library(ggthemes)
counts<-c(135.92, 15.98, 14.97, 14.15, 5.82, 11.82, 0.07)
counts_names<-sprintf("%s (%s)", c("Coal", "Gas", "Wind", "Hydro", "Grid-scalar solar", "Rooftop solar", "Storage systems"),
scales::percent(round(counts/sum(counts), 4)))
names(counts)<-counts_names
- 您可以通过
colors
参数设置颜色。在这种情况下,最后一个类别将出现在图例中,但不会出现在图中。还。在这种情况下,最后一列未填满。
waffle(counts, colors = tableau_color_pal()(length(counts)))
- 您可以使用
ceiling()
而不是使用原始数据。因为你的最后一类在情节和图例中都有体现。
waffle(ceiling(counts), colors = tableau_color_pal()(length(counts)))
- 最后,如果你要填写最后一列,你可以使用
ceiling()
,让waffle
选择颜色并使用scale_fill_manual
: 进行验证
waffle(ceiling(counts)) + scale_fill_tableau()
您可以使用 scale_fill_manual()
来获取您要查找的内容
library(ggthemes)
library(waffle)
counts<-c(135.92, 15.98, 14.97, 14.15, 5.82, 11.82, 0.07 )
counts_names<-sprintf("%s (%s)", c("Coal", "Gas", "Wind", "Hydro", "Grid-scalar solar", "Rooftop solar", "Storage systems"),
scales::percent(round(counts/sum(counts), 4)))
names(counts)<-counts_names
Generation_graph<-waffle(counts) +
scale_fill_manual(values = c("red", "blue", "green", "purple", "pink", "yellow", "orange", "blue"),
labels = counts_names,
drop = TRUE)