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

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

  • [第1关 Seaborn](#第1关 Seaborn)
  • [第2关 Seaborn图形介绍](#第2关 Seaborn图形介绍)
  • [第3关 Basemap](#第3关 Basemap)

第1关 Seaborn

任务描述

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

编程要求

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

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

文件的部分数据如下:

提示 :在绘制折线图时,需要对数据进行预处理,通过支付时间提取月份信息,再根据月份信息进行聚类,汇总每个月的实际金额,得到月销售总和。

请先仔细阅读右侧上部代码编辑区内给出的代码框架,再开始你的编程工作!
测试说明

平台会对你编写的代码进行测试,对比你输出的数值与实际正确的数值,只有所有数据全部计算正确才能进入下一关。

测试输入:

无测试输入

预期输出:

生成图片与预期图片一致

开始你的任务吧,祝你成功!

python 复制代码
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;
  • 具体要求请参见后续测试样例。

请先仔细阅读右侧上部代码编辑区内给出的代码框架,再开始你的编程工作!
测试说明

平台会对你编写的代码进行测试,对比你输出的数值与实际正确的数值,只有所有数据全部计算正确才能进入下一关。

测试输入:

无测试输入

预期输出:

生成图片与预期图片一致

开始你的任务吧,祝你成功!

python 复制代码
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;
  • 具体要求请参见后续测试样例。

请先仔细阅读右侧上部代码编辑区内给出的代码框架,再开始你的编程工作!
测试说明

平台会对你编写的代码进行测试,对比你输出的数值与实际正确的数值,只有所有数据全部计算正确才能进入下一关。

测试输入:

无测试输入

预期输出:

生产图片与预期图片一致

开始你的任务吧,祝你成功!

python 复制代码
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 *********#
    
相关推荐
萧鼎1 小时前
Python调试技巧:高效定位与修复问题
服务器·开发语言·python
IFTICing1 小时前
【文献阅读】Attention Bottlenecks for Multimodal Fusion
人工智能·pytorch·python·神经网络·学习·模态融合
大神薯条老师1 小时前
Python从入门到高手4.3节-掌握跳转控制语句
后端·爬虫·python·深度学习·机器学习·数据分析
程序员爱德华1 小时前
Python环境安装教程
python
huanxiangcoco1 小时前
152. 乘积最大子数组
python·leetcode
萧鼎2 小时前
Python常见问题解答:从基础到进阶
开发语言·python·ajax
PythonFun2 小时前
Python技巧:如何避免数据输入类型错误
前端·python
kaikai_sk2 小时前
搜索引擎相关的一段实习经历
python
qinzechen2 小时前
分享几个做题网站------学习网------工具网;
java·c语言·c++·python·c#
hakesashou2 小时前
python交互式命令时如何清除
java·前端·python