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

一、设计题目

长沙景区数据分析项目

二、设计目的

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

三、设计要求

读取'长沙景区信息.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()
相关推荐
rit84324991 分钟前
MATLAB中Teager能量算子提取与解调信号的实现
开发语言·matlab
开源技术3 分钟前
Python GeoPandas基础知识:地图、投影和空间连接
开发语言·ide·python
hedley(●'◡'●)7 分钟前
基于cesium和vue的大疆司空模仿程序
前端·javascript·vue.js·python·typescript·无人机
Cult Of7 分钟前
Alicea Wind的个人网站开发日志(2)
开发语言·python·vue
我找到地球的支点啦12 分钟前
通信扩展——扩频技术(超级详细,附带Matlab代码)
开发语言·matlab
啊阿狸不会拉杆13 分钟前
《机器学习导论》第 5 章-多元方法
人工智能·python·算法·机器学习·numpy·matplotlib·多元方法
wangsir.29 分钟前
测试之自动化测试常用函数
python·测试
微小冷31 分钟前
Rust异步编程详解
开发语言·rust·async·await·异步编程·tokio
铁蛋AI编程实战33 分钟前
MemoryLake 实战:构建超长对话 AI 助手的完整代码教程
人工智能·python·microsoft·机器学习
A9better35 分钟前
C++——不一样的I/O工具与名称空间
开发语言·c++·学习