求助:如何完成酒类分类可视化(含销量)及商店位置散点图?
R可视化任务解决方案
1. 商店位置经纬度散点图优化
你的基础代码已经实现了核心功能,这里做一些优化让图表更清晰实用:
library(tidyverse) # 绘制散点图,添加细节优化 data %>% ggplot(aes(x = Longitude, y = Latitude)) + # 调整为常规地图坐标轴逻辑:经度(x)、纬度(y) geom_point(na.rm = TRUE, alpha = 0.5, size = 1.5) + # 降低透明度避免点重叠,调整点大小 labs( title = "艾姆斯市酒类商店位置分布", x = "经度(Longitude)", y = "纬度(Latitude)" ) + theme_minimal() + # 使用简洁主题 theme(plot.title = element_text(hjust = 0.5)) # 标题居中
- 调整坐标轴顺序:把Longitude(经度)放在x轴,Latitude(纬度)放在y轴,符合地图常规展示逻辑
- 添加
alpha = 0.5:解决密集区域点重叠问题,更能看出位置分布密度 - 补充标题和坐标轴标签:让图表信息完整
- 使用
theme_minimal()美化样式,标题居中提升可读性
2. 按酒类分类拆解销量可视化
首先需要对数据按Category Name聚合计算总销量,再处理长标签问题,确保可视化清晰:
步骤1:数据预处理(计算分类总销量)
# 按Category Name分组,计算总销量(请根据实际列名调整`Volume Sold (Gallons)`) category_sales <- data %>% drop_na(`Category Name`) %>% # 去除分类名称为空的无效行 group_by(`Category Name`) %>% summarise(total_volume = sum(`Volume Sold (Gallons)`, na.rm = TRUE)) %>% arrange(desc(total_volume)) # 按销量从高到低排序
步骤2:绘制可视化图表
category_sales %>% ggplot(aes(x = reorder(`Category Name`, total_volume), y = total_volume)) + geom_bar(stat = "identity", fill = "#2E86AB") + coord_flip() + # 翻转坐标轴,解决长分类名称显示不全的问题 labs( title = "各类别酒类总销量对比", x = "酒类类别(Category Name)", y = "总销量(Volume Sold, Gallons)" ) + theme_minimal() + theme( plot.title = element_text(hjust = 0.5), axis.text.y = element_text(size = 8) # 调整y轴标签大小,确保清晰可读 )
- 使用
reorder()函数:让条形按销量从高到低排序,更直观 coord_flip():翻转坐标轴,避免长分类名称在x轴上重叠,保证标签完全显示- 去除缺失分类名称的数据:避免无效分组干扰结果
- 调整标签字体大小:确保所有类别名称清晰可读
内容的提问来源于stack exchange,提问作者user20216460
相关产品推荐
相关产品推荐

