• Matplotlib数据可视化综合应用Matplotlib图形配置在线闯关_头歌实践教学平台


    第1关 配置颜色条

    任务描述
    本关任务:使用colorbar绘制一个热成像图。

    编程要求
    在右侧编辑器Begin-End处补充代码,根据输入数据绘制热成像图并隐藏坐标轴,具体要求如下:

    • 图形的figsize为(10, 10);
    • 图形保存到Task1/img/T1.png。

    测试说明
    平台会对你编写的代码进行测试:
    预期输出:你的答案与正确答案一致
    开始你的任务吧,祝你成功!

    import matplotlib
    matplotlib.use("Agg")
    import matplotlib.pyplot as plt
    import numpy as np
    
    def student(data):
        # ********* Begin *********#
        plt.figure(figsize=(10,10))
        plt.imshow(data,cmap='hot')
        plt.colorbar()
        plt.savefig('Task1/img/T1.png')
        plt.show()
    
        # ********* End *********#
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    第2关 设置注释

    任务描述
    本关任务:掌握matplotlib设置注释的几种方法和文字坐标变换,并能够应用到图形中。

    编程要求
    在右侧编辑器补充代码,根据函数参数file_name读取文件,统计每年births的总和并作折线图,为最高/最低出生数年份设置注释,具体要求如下:

    • 对数据进行去空值处理;
    • 注释文字的坐标位置为被注释的坐标点减5;
    • 折线图的figsize为(10, 10);
    • 图形需保存到Task2/img2/T5.png。

    测试说明
    平台会对你编写的代码进行测试:
    测试输入:Task2/births.csv
    预期输出:你的答案与正确答案一致
    开始你的任务吧,祝你成功!

    import matplotlib
    matplotlib.use('Agg')
    import pandas as pd
    import matplotlib.pyplot as plt
    import numpy as np
    import warnings
    warnings.filterwarnings("ignore")
    import matplotlib as mpl
    def student(file_name):
        # ********* Begin *********#
        fig = plt.figure(figsize=(10,10))
        data = pd.read_csv(file_name)
        data = data.dropna(axis=0,how='any')  
        data = data.groupby(['year'])[['births']].sum()
        plt.plot(data.index,data.values)
        dic = data.to_dict()
        dic = dic['births']
        maxx=max(dic,key=dic.get)
        minn=min(dic,key=dic.get)
        plt.annotate('max', xy=(maxx,dic[maxx]), xytext=(maxx-5,dic[maxx]-5), arrowprops=dict(facecolor='black', shrink=0.05))
        plt.annotate('min', xy=(minn,dic[minn]), xytext=(minn-5,dic[minn]-5), arrowprops=dict(facecolor='black', shrink=0.05))
        plt.savefig('Task2/img2/T5.png')
    
    
        # ********* End *********#
    
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    第3关 自定义坐标刻度

    任务描述
    本关任务:掌握如何将坐标轴刻度调整为需要的位置与格式。

    编程要求
    在右侧编辑器补充代码,根据file_path读取文件,统计不同二级类的数量做折线图并旋转x坐标轴90度,具体要求如下:

    • 图形的figsize为(10, 10);
    • 图形需保存到Task3/img/T1.png。

    数据内容如下:
    在这里插入图片描述
    测试说明
    平台会对你编写的代码进行测试:
    测试输入:Task3/fj1.csv
    预期输出:你的答案与正确答案一致
    开始你的任务吧,祝你成功!

    import matplotlib
    matplotlib.use("Agg")
    import matplotlib.pyplot as plt
    import numpy as np
    import pandas as pd
    plt.rcParams['font.sans-serif']=['simhei']
    plt.rcParams['font.family']='sans-serif'
    plt.rcParams['axes.unicode_minus']=False
    
    def student(file_path):
    
        # ********* Begin *********#
        plt.figure(figsize=(10,10))
        data=pd.read_csv(file_path)
        a=data.groupby(["二级类"])["二级类"].count()
        plt.plot(a)
        plt.xticks(rotation=90)
        plt.savefig("Task3/img/T1.png")
        plt.show()
    
        # ********* End *********#
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    第4关 配置文件与样式表

    任务描述
    本关任务:掌握手动配置图形和修改默认配置,能够修改样式表。

    编程要求
    在右侧编辑器补充代码,根据输入数据绘制直方图调整直方图颜色为红色透明度0.7为,并设置组合样式classic和bmh,具体要求如下:

    • 折线图的figsize为(10, 10)
    • 图形需保存到Task4/img/T1.png

    测试说明
    平台会对你编写的代码进行测试:
    预期输出:你的答案与正确答案一致
    开始你的任务吧,祝你成功!

    import matplotlib
    matplotlib.use("Agg")
    import matplotlib.pyplot as plt
    import numpy as np
    import pandas as pd
    
    def student(input_data):
        # ********* Begin *********#
        plt.figure(figsize=(10,10))
        plt.style.use(["classic","bmh"])
        plt.hist(input_data,facecolor="red",alpha=0.7)
        plt.savefig("Task4/img/T1.png")
        plt.show()
        # ********* End *********#
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
  • 相关阅读:
    【牛客网】OR63 删除公共字符串
    时序预测 | MATLAB实现NGO-LSTM北方苍鹰算法优化长短期记忆网络时间序列预测
    【单线图的系统级微电网仿真】基于 PQ 的可再生能源和柴油发电机组微电网仿真(Simulink)
    SpringCloud - Spring Cloud Alibaba 之 Seata分布式事务服务;AT事务模式(二十)
    怎么学编程效率高,编程练习网站编程软件下载,中文编程开发语言工具下载
    排序——直接插入、折半插入、希尔排序
    三菱PLC网络MC3E通信—读取或写入——字符串或数字
    Django(二)精美博客搭建(13)实现留言页面及留言功能
    还未入职,这位将来的博导为学生规划了一条高效学习之路
    提权方法:利用环境变量路径劫持提权
  • 原文地址:https://blog.csdn.net/xks18232047575/article/details/134342047