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

Matplotlib数据可视化综合应用图形配置

  • 第1关 配置颜色条
  • 第2关 设置注释
  • 第3关 自定义坐标刻度
  • 第4关 配置文件与样式表

第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 *********#

第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 *********#



第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 *********#


第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 *********#

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/129451.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【编程语言发展史】Go语言的发展历史

目录 Go的起源 Go语言发展时间轴 logo Go的起源 Go 语言起源 2007 年,并于 2009 年正式对外发布。它从 2009 年 9 月 21 日开始作为谷歌公司 20% 兼职项目,即相关员工利用 20% 的空余时间来参与 Go 语言的研发工作。该项目的三位领导者均是著名的 …

3 Paimon数据湖中的表类型详解

更多Paimon数据湖内容请关注:https://edu.51cto.com/course/35051.html Paimon中支持多种表类型,下面我们来看一下。 3.1 全局维度 首先从全局维度来看,Paimon中的表类型可以大致划分为4种: 内部表、外部表、分区表和临时表。 …

接收表单数据

如果您尝试按下提交按钮,浏览器将显示“Method Not Allowed”错误。这是因为到目前为止,前一节中的登录视图函数完成了一半的工作。它可以在网页上显示表单,但是还没有逻辑来处理用户提交的数据。这是Flask-WTF使工作变得非常简单的另一个领域…

Python语法基础(字符串 列表 元组 字典)

目录 字符串(str)字符串的创建特殊情况字符串的转义字符字符串的运算符字符串常用方法求字符串长度去掉多余空格是否包含某子串分割字符串合并字符串替换字符串统计统计字符串出现的次数 练习:判断字符串是否为回文串 列表(list)列表的创建列表常用方法遍历列表列表…

redis配置文件详解

一、配置文件位置 以配置文件启动 Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf ( Windows名为redis.windows. conf) 例: # 这里要改成你自己的安装目录 cd ./redis-6.0.8 vim redis.conf redis对配置文件对大小写不敏感 二、配置文件 1、获取当前服务的…

2023.11.10联赛 T4题解

题目大意 题目思路 我们考虑分块处理。 我们可以维护一个状态,表示块内每个字母对应的真实字母,因为只有 3 3 3个字母,所以只有 6 6 6种情况。 对于每一个块,我们可以对于每种状态、每种块,预处理出以 A A A或 B B …

文件缓存的读写

文件系统的读写,其实就是调用系统函数 read 和 write。下面的代码就是 read 和 write 的系统调用,在内核里面的定义。 SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count) {struct fd f fdget_pos(fd); ......loff_t pos f…

sjvisualizer,一个超强的Python数据可视化动画库

大家好,今天给大家介绍一个非常棒的数据可视化库,sjvisualizer。 根据时间序列数据制作动态图表,包含条形图、饼图、堆叠条形图、折线图、堆叠面积图。 可以先看一下官方的示例~ 只需几行代码,就可以制作电脑浏览器发展史的动态…

skynet学习笔记02— skynet介绍、skynet基础API与环境变量

01、Skynet与Actor模型 在系统Skynet之前,先了解一下Skynet与Actor模型,下列是风云大佬的介绍以及一个大佬的博客 https://github.com/cloudwu/skynet/wiki/GettingStartedhttps://blog.csdn.net/qq769651718/article/details/79432793 02、Skynet基础…

element 弹窗浏览器后退-遮照层还存在问题 以及跟vue keep-alive冲突

问题:element 弹窗浏览器后退-遮照层还存在问题 查询官网可以设置 modal-append-to-body“false” 可以全局设置 ElementUI.Dialog.props.modalAppendToBody.default false 后续 基本到这能解决问题,不过本项目比较特殊,使用了 keep-alive…

【算法】算法题-20231110

一、力口:506. 相对名次 简单 给你一个长度为 n 的整数数组 score ,其中 score[i] 是第 i 位运动员在比赛中的得分。所有得分都 互不相同 。 运动员将根据得分 决定名次 ,其中名次第 1 的运动员得分最高,名次第 2 的运动员得分第…

野火i.MX6ULL开发板wifi连接、SHH登录玄学篇

1、WiFi连接成功 服了,一样的步骤,它又行了。 手机开热点,2.4G频段,wanghaha,连上显示了IP地址,输入ping 百度网址 等了七八秒它访问成功。 中间还用过usb线刷镜像Debian。 2、使用 MobaXterm SSH 登录…

mongodb通过mongoexport命令导出数据

一、mongoexport命令参数 我们通过mongoexport --help来查看这个命令支持的参数 二、mongoexport几个常用参数的演示 2.1、导出所有数据,格式为json格式 –type 用来指定导出的数据格式,可以导出为.json或者.csv mongoexport --host localhost --…

GPT-4 Turbo:OpenAI发布旗舰版GPT-4模型,更便宜|更强大|128K上下文|支持多模态

一、介绍 OpenAI 在 2023 年 11 月 7 日举行首届开发者大会,此次展会的亮点无疑是 GPT-4 Turbo 的亮相,它是 OpenAI 著名的 GPT-4 模型的升级版。 GPT-4 Turbo 有两种变体:一种用于文本分析,另一种能够理解文本和图像。 GPT-4 Tu…

【架构】后端项目经典分层架构介绍

文章目录 前言分层架构项目实践示例项目结构 其他知识 前言 开发后端项目时,我们最常见的一种架构模式就是分层架构 。 所谓的分层架构,就是把系统自上而下分为多个不同的层,每一层都有特定的功能和职责,且只和自己的直接上层与…

游戏缺失d3dx9_39.dll的5个修复方法,深度解析d3dx9_39.dll文件的作用

在当今的数字化时代,电子游戏已经成为了人们休闲娱乐的重要方式之一。然而,对于许多玩家来说,他们在享受游戏带来的乐趣的同时,也可能会遇到各种各样的问题,其中最常见的就是游戏无法正常运行。而这些问题中&#xff0…

chatglm3-6b记录问答对

# 打开文件,第二个参数是打开文件的模式,a代表追加,也就是说,打开这个文件之后直接定位到文件的末尾 file open(chatlog.txt, "a") # 写入数据 file.write(ask:prompt_text\n) file.write(response:response\n) # 关闭文件 fil…

2023.11.10联赛 T3题解

题目大意 题目思路 感性理解一下,将一个数的平方变成多个数平方的和,为了使代价最小,这些数的大小应该尽可能的平均。 我们可以将 ∣ b i − a i ∣ |b_i-a_i| ∣bi​−ai​∣放入大根堆,同时将这个数划分的次数以及多划分一段减…

基于.NET的强大文件格式开源转换工具

推荐一个非常强大、轻便的强大文件格式转换工具。 01 项目简介 一个基于.NET平台的开源文件格式转换工具,可以支持Windows 7/8/10等操作系统。安装后在右键菜单中出现 “File Converter” 项目,可以方便地通过右键菜单对选中文件进行格式转换&#xff…

找到【SVM】中最优的惩罚项系数C

因为本来SVM是想找到间隔最大的分割面,所以C越大,SVC会选择边际更小的,能够更好的分类所有训练点的决策边界,不过模型的训练时间也会越长。如果C的设定值较小,那SVC会尽量最大化边界,决策功能会更简单&…