import pandas as pd
data = pd.read_csv('D:/suning/iris.csv')
data = data.iloc[:,1:] ###2维散点图
import matplotlib.pyplot as plt k=[
'Sepal.Length',
'Sepal.Width',
'Petal.Length',
'Petal.Width',]
for i in k:
for m in k:
if i != m:
plt.figure(figsize=(10,10))
result =data.Species.unique()
plt.scatter(data.loc[data.Species == result[2], i], data.loc[data.Species == result[2],m], s = 35, marker='*', c ='g')
plt.scatter(data.loc[data.Species == result[1], i], data.loc[data.Species == result[1],m], s = 35, marker='+', c ='r')
plt.scatter(data.loc[data.Species == result[0], i], data.loc[data.Species == result[0],m], s = 35, marker='o',c = 'y')
# 添加轴标签和标题
plt.title( '')
plt.xlabel(i)
plt.ylabel(m)
# 去除图边框的顶部刻度和右边刻度
#lt.tick_params(top = 'off', right = 'off')
# 添加图例plt.legend(loc = 'upper left')
plt.show() ####三维散点图
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D k=[
'Sepal.Length',
'Sepal.Width',
'Petal.Length',
'Petal.Width',]
for i in k:
for m in k:
for z in k:
if i != m and m!=z and 1!=z:
plt.figure(figsize=(10,10))
result = data.Species.unique()
ax = plt.subplot(111, projection='3d') # 创建一个三维的绘图工程
ax.scatter(data.loc[data.Species == result[2], i], data.loc[data.Species == result[2], m], data.loc[data.Species == result[2], z], c='g',marker='*') # 绘制数据点
ax.scatter(data.loc[data.Species == result[1], i], data.loc[data.Species == result[1], m], data.loc[data.Species == result[1], z], c='r',marker='+') # 绘制数据点
ax.scatter(data.loc[data.Species == result[0], i], data.loc[data.Species == result[0], m], data.loc[data.Species == result[0], z], c='y',marker='o') # 绘制数据点
ax.set_zlabel(z) # 坐标轴
ax.set_ylabel(m)
ax.set_xlabel(i)
plt.show()

Python 利用循环画散点图的更多相关文章

  1. python利用循环修改list内容

    写这个主意是记录一下今天遇到的问题,两种循环方式,但是只有一种可以修改list的内容 a=[1,2,3,4,5,6] for i in a: i=7 print(a) 以上这种代码a的内容不变,这里特 ...

  2. python中画散点图

    python中画散点图 示例代码: import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d impor ...

  3. python学习:利用循环语句完善输入设置

    利用循环语句完善输入设置 使用for循环: 代码1:_user = "alex"_password = "abc123" for i in range(3): ...

  4. python 练习题:请利用循环依次对list中的每个名字打印出Hello, xxx!

    方法一: # -*- coding: utf-8 -*- # 请利用循环依次对list中的每个名字打印出Hello, xxx! L = ['Bart', 'Lisa', 'Adam'] n = 0 w ...

  5. python之turtle画蚊香

    原理:利用turtle绘制圆形,并使圆半径逐步增加 代码如下: import turtle turtle.pensize(30) for i in range(30): turtle.circle(i ...

  6. python基础-循环

    循环 循环 要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+10000,直 ...

  7. python的循环和选择

    一.python的选择结构: python的选择结构有两种选择结构一种是单选择(if...else)另一种则是多选择结构(if ...elif...elif) 下面用代码来实现: 1.if....el ...

  8. Matplotlib学习---用matplotlib画散点图,气泡图(scatter plot, bubble chart)

    Matplotlib里有两种画散点图的方法,一种是用ax.plot画,一种是用ax.scatter画. 一. 用ax.plot画 ax.plot(x,y,marker="o",co ...

  9. Python的循环正确的操作使用方法详解

    要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+10000,直接写表达式就 ...

随机推荐

  1. PHPExcel如何把该列的值设置为文本无科学计数?

                    $obj_sheet->setCellValueExplicit($cells[$_counter].$i, (isset($val[$_value_key]) ...

  2. HDU4006(小根堆)

    The kth great number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Oth ...

  3. Day3-Python基础3--默认参数和参数组

    一.默认参数 先看下下面的代码: def stu_register(name,age,country,course): print("----注册学生信息------") prin ...

  4. MySQL 备份脚本--mysqldump在slave 上进行备份

    MySQL 备份脚本--mysqldump在slave 上进行备份 使用mysqldump在slave上进行备份,建议使用stop slave sql_thread,start slave sql_t ...

  5. Task用法(1)-启动方法

    第一.基本使用 Thread,ThreadPool,Task的区别 Task是.NET4.0加入的,跟线程池ThreadPool的功能类似,用Task开启新任务时,会从线程池中调用线程,而Thread ...

  6. python的ftp上传和下载

    # -*- coding: utf- -*- import os import ftplib USER_NAME = "" PASSWORD = "" SERV ...

  7. Java enum(枚举)使用详解之四

    用法五:实现接口 所有的枚举都继承自java.lang.Enum类.由于Java 不支持多继承,所以枚举对象不能再继承其他类. public interface Behaviour { void pr ...

  8. 阿里云服务器ubuntu安装redis2.8.13

    阿里云服务器ubuntu安装redis2.8.13 2014-09-04 16:14 |  coding云 |  2198次阅读 | 暂无评论   一.下载redis 可以先下载到本地,然后ftp到服 ...

  9. 用命令查看端口占用情况 netstat -ano

    查看所有端口 netstat -ano 可以看到进程ID 参考某个具体端口,第五列就是PID进程ID了. netstat -aon|findstr "80"

  10. DAY5-常用模块

    一 time与datetime模块 二.random模块 三.os模块 四.sys模块 五 shutil模块 六 json&pickle模块 七 shelve模块 八 xml模块 九 conf ...