Seaborn数据可视化综合应用Basemap和Seaborn在线闯关_头歌实践教学平台

本文介绍了如何使用Seaborn库绘制折线图展示每月销售总额,并结合Basemap库在中国地图背景下创建散点图。涉及代码示例展示了从CSV文件读取数据,数据预处理,以及使用Seaborn和Basemap进行图形设计的过程。
摘要由CSDN通过智能技术生成

Seaborn数据可视化综合应用Basemap和Seaborn

第1关 Seaborn

任务描述
本关任务:编写一个绘制每个月销售总额的折线图。

编程要求
本关的编程任务是补全右侧上部代码编辑区内的相应代码,根据输入文件路径读取文件,统计各个月销售总和,然后绘制折线图,需要应用seaborn设置默认样式,具体可视化要求如下:

  • 折线图的figsize为(10, 10);
  • 文件名为Task1/img/T1.png;
  • 具体要求请参见后续测试样例。

文件的部分数据如下:
在这里插入图片描述
提示:在绘制折线图时,需要对数据进行预处理,通过支付时间提取月份信息,再根据月份信息进行聚类,汇总每个月的实际金额,得到月销售总和。
请先仔细阅读右侧上部代码编辑区内给出的代码框架,再开始你的编程工作!
测试说明
平台会对你编写的代码进行测试,对比你输出的数值与实际正确的数值,只有所有数据全部计算正确才能进入下一关。
测试输入:
无测试输入
预期输出:
生成图片与预期图片一致
开始你的任务吧,祝你成功!

import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np


def student(input_data):
    # ********* Begin *********#
    sns.set()
    plt.figure(figsize=(10,10))
    a=pd.read_csv(input_data)
    a["month"]=a["支付时间"].map(lambda x:int(x.split("/")[1]))
    d=a["实际金额"].groupby(a["month"]).sum()
    d=d.sort_index(ascending=False)
    plt.plot(d)
    plt.savefig("Task1/img/T1.png")
    plt.show()
    
    # ********* End *********#
    
    

第2关 Seaborn图形介绍

任务描述
本关任务:编写一个使用Seaborn来绘制散点图的程序。

编程要求
本关的编程任务是补全右侧上部代码编辑区内的相应代码,根据输入的文件路径读取文件并使用factorplot绘制关于smoker字段的条形图以统计吸烟和不吸烟的人数,具体可视化要求如下:

  • 设置Seaborn样式为white;
  • 设置颜色为steelblue;
  • 设置kind为count;
  • 图形的figsize为(10, 10);
  • 文件名为Task2/img/T1.png;
  • 具体要求请参见后续测试样例。

请先仔细阅读右侧上部代码编辑区内给出的代码框架,再开始你的编程工作!
测试说明
平台会对你编写的代码进行测试,对比你输出的数值与实际正确的数值,只有所有数据全部计算正确才能进入下一关。
测试输入:
无测试输入
预期输出:
生成图片与预期图片一致
开始你的任务吧,祝你成功!

import matplotlib
matplotlib.use("Agg")
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings("ignore")


def student(file_path):
    # ********* Begin *********#
    plt.figure(figsize=(10,10))
    tips=pd.read_csv(file_path)
    with sns.axes_style('white'):
        sns.factorplot('smoker',data=tips,kind='count',color='steelblue')
    plt.savefig('Task2/img/T1.png')
    plt.show()



    # ********* End *********#

第3关 Basemap

任务描述
本关任务:以中国地图为背景绘制散点图。

编程要求
本关的编程任务是补全右侧上部代码编辑区内的相应代码,中国地图已经绘制好,只需要读取输入参数img_path作为绘图背景,x/y为散点图数据,需要设置散点图的参数为标记设置为o,大小为150,具体可视化要求如下:

  • 图形的figsize为(10, 10);
  • 图形保存到Task3/img/T1.png;
  • 具体要求请参见后续测试样例。

请先仔细阅读右侧上部代码编辑区内给出的代码框架,再开始你的编程工作!
测试说明
平台会对你编写的代码进行测试,对比你输出的数值与实际正确的数值,只有所有数据全部计算正确才能进入下一关。
测试输入:
无测试输入
预期输出:
生产图片与预期图片一致
开始你的任务吧,祝你成功!

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import numpy as np
from numpy import *
def student(img_path,x,y):
    # ********* Begin *********#
    fig=plt.figure(figsize=(10,10))
    img=plt.imread(img_path)
    plt.imshow(img)
    plt.scatter(x,y,marker='o',s=150)
    plt.savefig('Task3/img/T1.png')
    plt.show()


    # ********* End *********#
    
Python是一种强大的编程语言,特别适合处理科学计算和数据分析。如果你想解析并可视化FY-2G卫星的亮温数据,通常你需要遵循以下步骤: 1. **导入库**:首先,需要导入一些必要的库,如`pandas`用于数据处理,`numpy`用于数值计算,以及`matplotlib`或`seaborn`用于数据可视化。 ```python import pandas as pd import numpy as np import matplotlib.pyplot as plt ``` 2. **数据获取**:如果你的数据存储在CSV、TXT或其他常见格式中,可以使用`pd.read_csv()`或`np.loadtxt()`等函数读取。如果数据来自网络API,可能需要使用像`requests`这样的库。 3. **数据清洗**:检查数据是否有缺失值或错误,可能需要进行预处理,例如删除空行、转换数据类型等。 4. **解析数据**:根据数据结构解析数据,可能涉及到时间戳解析、地理坐标转换等操作。 5. **数据探索**:对数据进行初步分析,了解数据分布、统计特性等。 6. **亮温数据可视化**: - 可以画出每个观测点的亮温随时间变化的折线图,展示空间上某个区域的时间序列亮温变化。 - 或者通过地图插件(如Basemap或Cartopy),将亮温值映射到地理位置,生成热力图表示不同地点的温度差异。 示例代码片段: ```python df = pd.read_csv('fy2g_data.csv') # 假设data列是亮温数据,time列是时间戳 df['datetime'] = pd.to_datetime(df['time']) plt.figure(figsize=(10, 6)) plt.plot(df['datetime'], df['data']) plt.title('FY-2G亮温时间序列') plt.xlabel('时间') plt.ylabel('亮温') plt.show() # 地理空间可视化(仅作演示,实际需安装相应库) from mpl_toolkits.basemap import Basemap m = Basemap(projection='merc', llcrnrlat=lat_min, urcrnrlat=lat_max, llcrnrlon=lon_min, urcrnrlon=lon_max) x, y = m(df.longitude, df.latitude) # 假设longitude和latitude列有经纬度信息 m.imshow(df['data'].values.reshape(lat_shape, lon_shape), origin='upper', cmap='RdYlBu') plt.colorbar() plt.show() ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿松爱睡觉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值