r - 如何从具有多列的表在 R 中创建分组条形图
问题描述
我有以下数据框
proba <- data.frame(PartnerName = c("China", "Brazil", "Argentina", "UE", "US"), Food = c(1,2,3,4,5), Machinery = c(1,2,3,4,5), Chemicals = c(1,2,3,4,5), CrudeMaterials = c(1,2,3,4,5))
现在我想创建一个分组条形图,它在 x 轴上显示类别(机械、食品等),在 y 轴上显示按国家/地区分组贸易的总价值。
我想得到的图表看起来像这样(我在 excel 中做了):
我可以使用 barplot 得到一个简单的图表,但它没有那么详细和准确。任何帮助都感激不尽!
解决方案
我们也可以使用gather
library(tidyr)
library(ggplot2)
library(dplyr)
proba %>%
gather(names, values, -PartnerName) %>%
ggplot(aes(x=names, y=values, fill = PartnerName))+
geom_col()
推荐阅读
- javascript - 格式化日期数组
- visual-studio-code - 使用带有 remote-ssh 扩展的 Visual Studio Code 时设置环境变量
- android - Profiler 中的内存使用量远低于实际设备
- javascript - 单击带有 reactjs 和 Material UI 的按钮时更改内容
- facebook-graph-api - 在 Instagram 上的当前帐户上按标签搜索内容
- pytorch - 张量的核范数是什么?
- arrays - 在不同的谷歌表格中计算与其案例 ID 匹配的唯一广告系列 ID
- mysql - 如何对两个数据之间的空值进行升序
- html - 将浮动设置为子 div 后忽略父 div 位置
- mysql - MySQL - 子查询排序 MySQL