美文网首页数据分析
机器学习1——KNN算法之绘图

机器学习1——KNN算法之绘图

作者: valiant_xin | 来源:发表于2020-11-10 17:47 被阅读0次

    1.数据准备

    1.导包

    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt #画图使用
    

    2.数据准备

    #训练数据
    rowdata = {'酒精浓度':[14.23,13.2,13.16,14.37,13.24,12.07,12.43,11.79,12.37,12.04],
              '颜色深度':[5.64,4.38,5.68,4.80,4.32,2.76,3.94,3.  ,2.12,2.6 ],
              '品种':[0,0,0,0,0,1,1,1,1,1]}
    #0 代表“黑皮诺”,1代表“赤霞珠”
    new_data = np.array([12.8,4.1])
    

    3.将数据转化成DataFrame以便使用

    #将原始数据转化dataframe
    wine_data = pd.DataFrame(rowdata)
    wine_data
    

    2. 将数据绘制到二维图片上去

    • 准备工作:查看所有可用风格

    # 查看风格
    plt.style.available
    
    • 准备工作:设置风格

    # 设置风格
    plt.style.use('ggplot')
    
    • 准备工作:设置清晰度

    # 设置图片清晰度
    plt.figure(dpi=200)
    
    • 准备工作:plt.scatter

    # 可视化: scatter, plot
    
    # 参数
    # cmap=None, color map映射,设置颜色映射。传入数值序列,会按照数值大小映射成不同的颜色
    # c=None,不同颜色分类,比如指定颜色或者直接拿数据处理
    # cmap=None, 颜色方案,比如rainbow彩虹
    
    p = plt.scatter(X1, Y1, c=wine_data.品种, cmap='rainbow')#散点图
    
    plt.scatter(x = [1,2,3,4,5,6,7], y=[1,2,3,4,5,6,7], c=[1,2,3,4,5,6,7], cmap='rainbow')
    
    • 准备工作:横纵坐标数据获取

    X1 = wine_data.酒精浓度
    Y1 = wine_data.颜色深度
    
    • 准备工作:Matplotlib支持中文

    #Windows电脑 Matplotlib支持中文
    plt.rcParams['font.sans-serif']=['SimHei']
    plt.rcParams['axes.unicode_minus'] = False
    
    #mac电脑 Matplotlib支持中文
    plt.rcParams['font.family']=['Arial Unicode MS']
    

    1.数据准备

    #将两组数据绘制到同一个图表中,所以需要两个数据data0、data1
    data0 = wine_data[wine_data.品种 == 0]
    data0
    
    data1 = wine_data[wine_data.品种 == 1]
    data1
    

    2.将数据绘制出来(图例在默认左上)

    # 设置图片清晰度
    plt.figure(dpi=200)
    # 分别进行散点图绘制
    plt.scatter(data0.酒精浓度, data0.颜色深度, c='purple', label='黑皮诺')
    plt.scatter(data1.酒精浓度, data1.颜色深度, c='red', label='赤霞珠')
    plt.legend() # 添加图例,将图例显示出来
    

    3.将数据绘制出来(指定图例位置)

    # 设置图片清晰度
    plt.figure(dpi=200)
    # 分别进行散点图绘制
    plt.scatter(data0.酒精浓度, data0.颜色深度, c='purple', label='黑皮诺')
    plt.scatter(data1.酒精浓度, data1.颜色深度, c='red', label='赤霞珠')
    plt.legend(loc='lower right') # 添加图例,修改图例位置
    

    4.将数据绘制出来(追加新数据)

    # 将新的数据绘制到图中
    
    # 设置图片清晰度
    plt.figure(dpi=200)
    # 分别进行散点图绘制
    plt.scatter(data0.酒精浓度, data0.颜色深度, c='purple', label='黑皮诺')
    plt.scatter(data1.酒精浓度, data1.颜色深度, c='red', label='赤霞珠')
    plt.scatter(new_data[0], new_data[1], c='yellow')
    plt.legend(loc='lower right') # 添加图例,修改图例位置
    

    相关文章

      网友评论

        本文标题:机器学习1——KNN算法之绘图

        本文链接:https://www.haomeiwen.com/subject/ltvjbktx.html