长沙景区数据分析项目实现

一、设计题目

长沙景区数据分析项目

二、设计目的

通过本项目让学生独立完成数据统计、数据可视化、数据分析的过程,并提高学生解决问题的能力。

三、设计要求

读取'长沙景区信息.xlsx'文件(读取Excel文件的方法为pandas.read_excel(),详细介绍请见第四小节知识补充小节),按照文件中'景区区县'分组统计,计算各区域景区数量,使用matplotlib.pyplot模块绘制柱状图;按照文件中'景区区县'分组统计,计算各区域 '景区价格'均值并升序排序,使用matplotlib.pyplot模块绘制折线图,删除特殊格式景区区县, x轴刻度标签选取景区区县如图所示。(图表颜色不限制)。

代码实现:

python 复制代码
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

# 设置中文字体
plt.rcParams['font.sans-serif'] = ['SimHei']  # 使用黑体
plt.rcParams['axes.unicode_minus'] = False    # 解决负号显示问题

# 读取Excel文件
file_path = '长沙景区信息.xlsx'
df = pd.read_excel(file_path)

# 按照'景区区县'分组统计,计算各区域景区数量
grouped_count = df['景区区县'].value_counts().sort_index()

# 绘制柱状图
plt.figure(figsize=(10, 6))
grouped_count.plot(kind='bar')
plt.title('各区域景区数量')
plt.xlabel('景区区县')
plt.ylabel('景区数量')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

# 按照'景区区县'分组统计,计算各区域 '景区价格'均值并升序排序
grouped_price = df.groupby('景区区县')['景区价格'].mean().sort_values()

# 绘制折线图
plt.figure(figsize=(10, 6))
grouped_price.plot(kind='line', marker='o')
plt.title('各区域景区价格均值')
plt.xlabel('景区区县')
plt.ylabel('景区价格均值')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

# 删除特殊格式景区区县
# 假设特殊格式的景区区县包含某些特定字符,例如 '特殊',可以根据实际情况修改
df = df[~df['景区区县'].str.contains('特殊')]

# 重新计算并绘制图表
grouped_count_cleaned = df['景区区县'].value_counts().sort_index()
grouped_price_cleaned = df.groupby('景区区县')['景区价格'].mean().sort_values()

# 绘制柱状图
plt.figure(figsize=(10, 6))
grouped_count_cleaned.plot(kind='bar')
plt.title('各区域景区数量(删除特殊格式后)')
plt.xlabel('景区区县')
plt.ylabel('景区数量')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

# 绘制折线图
plt.figure(figsize=(10, 6))
grouped_price_cleaned.plot(kind='line', marker='o')
plt.title('各区域景区价格均值(删除特殊格式后)')
plt.xlabel('景区区县')
plt.ylabel('景区价格均值')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
相关推荐
IT陈图图1 小时前
构建 Flutter × OpenHarmony 跨端带文本输入对话框示例
开发语言·javascript·flutter
叫我辉哥e16 小时前
### 技术文章大纲:C语言造轮子大赛
c语言·开发语言
Hgfdsaqwr7 小时前
Django全栈开发入门:构建一个博客系统
jvm·数据库·python
guygg887 小时前
NOMA功率分配与64 QAM调制中的SIC的MATLAB仿真
开发语言·matlab
开发者小天7 小时前
python中For Loop的用法
java·服务器·python
flushmeteor7 小时前
JDK源码-基础类-String
java·开发语言
老百姓懂点AI8 小时前
[RAG实战] 向量数据库选型与优化:智能体来了(西南总部)AI agent指挥官的长短期记忆架构设计
python
u0109272718 小时前
C++中的策略模式变体
开发语言·c++·算法
雨季6669 小时前
构建 OpenHarmony 简易文字行数统计器:用字符串分割实现纯文本结构感知
开发语言·前端·javascript·flutter·ui·dart
雨季6669 小时前
Flutter 三端应用实战:OpenHarmony 简易倒序文本查看器开发指南
开发语言·javascript·flutter·ui