基于Python数据可视化(salary)

本文介绍如何使用Seaborn库进行数据可视化,包括设置绘图风格、绘制散点图和箱线图等操作。通过具体实例展示了如何加载数据、应用jitter效果以及调整透明度等技巧。

csv附件

https://download.youkuaiyun.com/download/llf000000/86721674

准备的知识

seaborn

seaborn是python中的一个可视化库,是对matplotlib进行二次封装而成,既然是基于matplotlib,所以seaborn的很多图表接口和参数设置与其很是接近

import os 

#大问题用第三方包解决,小问题用内置函数解决,这里用包

os.getcwd()

扩写:current working directory

获取当前工作目录,getcwd()是一个函数,在os包里,用于查看当前文件目录

sns.set_style('darkgrid')

sns.set_style? 打问号后会有提示出现

darkgrid背景是黑色带网格的

seaborn 库提供了五种绘图风格,分别是:darkgrid(灰色网格),whitegrid(白色网格),dark(深色),white(白色),ticks(刻度线段)

jitter

jitter:float或True

画散点图是很多点会重叠在一起,我们可以让他们呢稍微有点抖动,True让图稍微有点抖动

要应用的抖动量(仅沿分类轴)。 当您有许多点并且它们重叠时,这可能很有用,因此更容易看到分布。您可以指定抖动量(均匀随机变量支持的宽度的一半),或者仅使用True作为良好的默认值

alpha

代表透明度 ,100%的alpha会导致被遮盖的那一部分看不到

完成代码块

import os
os.getcwd()

# 读取数据
import pandas as pd 
salaries = pd.read_csv('salaries.csv', index_col=0)

#把excel数据文件读到salaries这个变量里,这个变量是一个数据框(表结构dataframe)
# 查看数据
salaries.head()

我们看一下是不是真的读进来了

以上是数据的准备

# 导入seaborn包,并取别名为sns
import seaborn as sns

# 设置图片样式
sns.set_style('darkgrid')
# 绘制散点图
sns.stripplot(data=salaries, x='rank', y='salary', jitter=True, alpha=0.5)

# 绘制箱线图
sns.boxplot(data=salaries, x='rank', y='salary')

 

 如果合并到一起的话

# 绘制散点图
sns.stripplot(data=salaries, x='rank', y='salary', jitter=True, alpha=0.5)

# 绘制箱线图
sns.boxplot(data=salaries, x='rank', y='salary')

目录

准备的知识

seaborn

import os 

os.getcwd()

sns.set_style('darkgrid')

jitter

alpha

完成代码块


### 使用Python实现招聘数据分析与可视化 #### 数据收集 为了进行有效的招聘数据分析,首先需要获取大量的招聘信息。可以利用大数据爬虫技术来抓取网络上的公开招聘信息。Django框架能够很好地支持Web开发需求,而Scrapy则是用于构建爬虫系统的强大工具[^1]。 ```python import scrapy class JobSpider(scrapy.Spider): name = "job_spider" start_urls = [ 'http://example.com/jobs', ] def parse(self, response): for job in response.css('div.job-list'): yield { 'title': job.xpath('.//h2/a/text()').get(), 'company': job.css('span.company::text').get(), 'location': job.css('p.location::text').get() } ``` #### 数据预处理 在获得原始数据之后,通常会存在缺失值、重复项等问题。Pandas库提供了丰富的功能来进行数据清洗和转换操作,使数据更适合后续分析。 ```python import pandas as pd data = pd.read_csv('jobs.csv') cleaned_data = data.dropna().drop_duplicates(subset=['title', 'company']) ``` #### 探索性数据分析(EDA) 探索性数据分析可以帮助理解数据分布特征以及变量之间的关系。Matplotlib 和 Seaborn 是两个常用的绘图库,可用于创建各种类型的图表展示数据特点。 ```python import matplotlib.pyplot as plt import seaborn as sns plt.figure(figsize=(10, 6)) sns.countplot(x='experience_required', hue='industry', data=cleaned_data) plt.title('Experience Requirement by Industry') plt.show() # 对于分类字段绘制饼状图 category_counts = cleaned_data['category'].value_counts(normalize=True)*100 fig, ax = plt.subplots() ax.pie(category_counts, labels=category_counts.index, autopct='%1.1f%%') ax.set_title('Job Category Distribution (%)') plt.show() ``` #### 可视化仪表板建设 对于更复杂的数据集,可能希望构建交互式的可视化界面以便用户查询特定条件下的信息。Plotly Dash是一个非常适合用来搭建这类应用程序的开源平台;它允许开发者轻松地将静态图形转化为动态组件,并集成到网页环境中供他人访问查看。 ```python from dash import Dash, dcc, html import plotly.express as px app = Dash(__name__) df = cleaned_data.copy() fig = px.scatter(df, x="salary", y="years_of_experience", color="education_level") app.layout = html.Div([ dcc.Graph(id='scatter-plot', figure=fig), ]) if __name__ == '__main__': app.run_server(debug=True) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值