python实现终端3维数据可视化
Posted sunny开始学坏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python实现终端3维数据可视化相关的知识,希望对你有一定的参考价值。
先上效果图:
注意:转载请注明出处
用matplotlib制作图表
把文件当做变量拿来和opencv互相通信
用opencv解析图像
# -*- coding:utf-8 -*- from HUAI_ZH import * from mpl_toolkits.mplot3d import Axes3D import numpy as np import matplotlib.pyplot as plt import show import cv2 import os from matplotlib import pyplot as plt import numpy as np from mpl_toolkits.mplot3d import Axes3D fig = plt.figure() ax = Axes3D(fig) X = np.arange(-4, 4, 0.25) Y = np.arange(-4, 4, 0.25) X, Y = np.meshgrid(X, Y) R = np.sqrt(X**2 + Y**2) Z = np.sin(R) a=ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=\'rainbow\') x=45 y=45 for i in range(100): p=raw_input(\'请输入方向\') if p==\'w\':y=y+10 if p==\'s\':y=y-10 if p==\'a\':x=x-10 if p==\'d\':x=x+10 ax.view_init(x,y) plt.savefig(\'/sdcard/qpython/qpyim.jpg\',dpi=500) pic = cv2.imread(\'/sdcard/qpython/qpyim.jpg\',0) pic = cv2.resize(pic, (int(95*2.8), int(95*2)), interpolation=cv2.INTER_CUBIC) ret,th1 = cv2.threshold(pic,140,255,cv2.THRESH_BINARY) os.system(\'clear\') print(\'\\033[1;91m\') for i in th1: l=i.tolist() l=[str(i) for i in l] s=\'\'.join(l).replace(\'255\',\'\\033[1;96m\'+\' \'+\'\\033[1;91m\').replace(\'0\',\'*\') print(s)
食用方法:
先将qpython的字符大小调到最低
然后运行程序
依赖库为:
opencv
matplotlib
安装命令
pip install opencv pip install matplotlib
注意:转载请注明出处!!
以上是关于python实现终端3维数据可视化的主要内容,如果未能解决你的问题,请参考以下文章
python 用于在终端中运行的sublime text 3的简单代码片段制作工具