0
点赞
收藏
分享

微信扫一扫

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



Matplotlib接口和常用图形

  • 第1关 画图接口
  • 第2关 线形图
  • 第3关 散点图
  • 第4关 直方图
  • 第5关 饼图


第1关 画图接口

任务描述
本关任务:掌握matplotlib的基本使用技巧,并能简单使用matplotlib进行可视化。

编程要求
在右侧编辑器Begin-End补充代码,对传入的x,y两个数组做折线图,x对应x轴,y对应y轴。并保存到Task1/image1/T2.png,具体要求如下:
折线图的figsize为(10, 10);
文件名为Task1/image1/T2.png。
测试说明
平台会对你编写的代码进行测试:
预期输出:你的答案与正确答案一致
开始你的任务吧,祝你成功!

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
def student(x,y):
    # ********** Begin *********#
    fig=plt.figure(figsize=(10,10))
    plt.plot(x,y)
    plt.savefig('Task1/image1/T2.png')
    plt.show()
    # ********** End **********#

第2关 线形图

任务描述
本关任务:学习掌握matplotlib的第一个图形线形图,并能够使用线形常用配置。

编程要求
在右侧编辑器Begin-End补充代码,根据输入数据input_data,input_data1绘制两条折线图。依次为两组数据设置颜色样式为–g,:r;设置图例为L1,L2,具体要求如下:
折线图的figsize为(10, 10);
图形保存到Task2/img/T1.png。
测试说明
平台会对你编写的代码进行测试:
预期输出:你的答案与正确答案一致
开始你的任务吧,祝你成功!

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt


def student(input_data,input_data1):

    # ********* Begin *********#
    fig=plt.figure(figsize=(10,10))
    plt.plot(input_data,'--g')
    plt.plot(input_data1,':r')
    plt.legend(['L1','L2'])
    plt.savefig('Task2/img/T1.png')
    plt.show()
    # ********* End *********#

第3关 散点图

任务描述
本关任务:编写一个包含三组不同样式的散点图。

编程要求
在右侧编辑器补充代码,根据输入的三组数据绘制三组不同参数的散点图,具体要求如下:
第一组数据参数设置标记大小为area,透明度为0.5;
第二组数据参数设置标记大小为area,标记颜色为绿色,透明度为0.6;
第三组数据参数设置标记大小为area,标记颜色为area,标记样式为v,透明度为0.7;
图形的figsize为(10, 10);
图形保存到Task3/img/T1.png。
测试说明
平台会对你编写的代码进行测试,因此请按照以下要求可视化:
预期输出:你的答案与正确答案一致
开始你的任务吧,祝你成功!

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
plt.style.use('seaborn-whitegrid')
import numpy as np

def student(x,y,x2,y2,x3,y3,area):
    '''
    根据输入的三组数据绘制三组不同参数的散点图
    :param x,y: 第一组数据,类型为array
    :param x2,y2: 第二组数据,类型为array
    :param x3,y3: 第三组数据,类型为array
    :param area: 标记大小参数的值,类型为array
    :return: None
    '''
    # ********* Begin *********#
    fig=plt.figure(figsize=(10,10))
    plt.scatter(x,y,s=area,alpha=0.5)
    plt.scatter(x2,y2,s=area,c='g',alpha=0.6)
    plt.scatter(x3,y3,s=area,marker='v',alpha=0.7)
    plt.savefig('Task3/img/T1.png')
    plt.show()

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

第4关 直方图

任务描述
本关任务:绘制一个包含直方图与线形图的图形。

编程要求
在右侧编辑器Begin-End处补充代码,根据输入数据将直方图与线形图绘制在同一面板中,并设置直方图为红色,线形图为蓝色,具体要求如下:
图形的figsize为(10, 10);
文件名为Task4/img/T1.png。
测试说明
平台会对你编写的代码进行测试:
预期输出:你的答案与正确答案一致
开始你的任务吧,祝你成功!

import matplotlib
matplotlib.use("Agg")
import numpy as np
import matplotlib.pyplot as plt



def student(data,x,y):
    '''
    根据输入数据将直方图与线形图绘制在同一面板中,并设置直方图为红色,线形图为蓝色
    :param data: 绘制直方图数据,类型为list
    :param x,y: 绘制线形图数据,类型为list

    :return: None
    '''
    # ********* Begin *********#
    fig=plt.figure(figsize=(10,10))
    plt.hist(data,facecolor='red')
    plt.plot(x,y,color='blue')
    plt.savefig('Task4/img/T1.png')
    plt.show()
     
    # ********* End *********#

第5关 饼图

任务描述
本关任务:绘制一个饼图。

编程要求
在右侧编辑器Begin-End处补充代码,根据输入数据labels、quants绘制饼图,并设置第二块突出0.1和显示各块的百分比,具体要求如下:
输入数据labels、quants为长度为10的列表
图形的figsize为(6, 6)
文件名为Task5/img/T1.png
测试说明
平台会对你编写的代码进行测试:
预期输出:你的答案与正确答案一致
开始你的任务吧,祝你成功!

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import numpy as np

def student(labels,quants):
    # ********* Begin *********#
    fig=plt.figure(figsize=(6,6))
    plt.pie(quants,labels=labels,explode=(0,0.1,0,0,0,0,0,0,0,0),autopct='%1.1f%%')
    plt.savefig('Task5/img/T1.png')
    plt.show()
    # ********* End *********#


举报

相关推荐

0 条评论