数据漫步图

在学习了Matplotlib第三方库之后,我们可以简单绘制折线图以及散点图。在此基础上我们可以来绘制数据漫步图
# 首先新建一个随机漫步图的类
# 在类中定义随机漫步的方法,这里需要导入第三方库:random中的choice
# 在创建一个绘制的模块,导入随机漫步图的模块
# 调用一系列方法

  1. 新建random_walk.py文件
    from random import choice
    class RandomWalk():
    # 默认点数为500点
    def init(self,num_points=500):
    self.num_points = num_points
    self.x_value = 0
    self.y_value = 0
    # 随机步数

    	 def  get_step(self):
    			 return choice([-1,1])*choice([1,2,3,4,5])
    
    	def fell_walk(self):
    			#设置漫步数据的所有点 
    		        while(len(self.x_value)) < self.num_points:
    		            # 定义x坐标和y坐标的移动步数
    		            x_step = self.get_step()
    		            y_step = self.get_step()
    		            # 原地不可以不动
    		            if x_step == 0 and y_step == 0:
    		                continue
    		            # x,y的下一步向
    		            next_x = self.x_value[-1]+x_step
    		            next_y = self.y_value[-1]+y_step
    		            # 将x,y的值追加到其中
    		            self.x_value.append(next_x)
    		            self.y_value.append(next_y)
    

2.新建matshow.py模块绘制
import matplotlib.pyplot as plot
from random_walk import RandomWalk
#创建一个实例对象,实现多次绘制
while True:
rw = RandomWalk()
rw.fill_walk()
plot.figure(figsize=(20,6))
#颜色映射就是用列表赋值给c,列表的值随意,大的代表颜色深
point_number = list(range(rw.num_points))

plot.scatter(rw.x_values,rw.y_values,c=point_number,cmap=plot.cm.Blues,s = 45)

# 突起点和终点

plot.scatter(0,0,c='green',s=100)
plot.scatter(rw.x_values[-1],rw.y_values[-1],c='red',s=100)

# 隐藏坐标轴
plot.axes().get_xaxis().set_visible(False)
plot.axes().get_yaxis().set_visible(False)
plot.title("随机漫步图",fontsize = 14)
plot.show()

 # 判断是否要继续
 keep_running = input("Make another walk:y/n")
if keep_running == 'n':
    break
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值