这篇文章主要介绍了计算机编程语言使用皮拉布库实现画线功能的方法,结合具体实例分析了计算机编程语言使用皮拉布库的相关函数实现画线功能的操作技巧,并附带说明了相关函数与参数功能,需要的朋友可以参考下
本文实例讲述了计算机编程语言使用皮拉布库实现画线功能的方法。分享给大家供大家参考,具体如下:
皮拉布提供了比较强大的画图功能,但是函数和参数都比较多,很容易搞混。我们平常使用最多的应该是画线了。下面,简单的对一些常用的划线函数进行了封装,方便使用。
# -*-编码:utf-8 -*-
导入皮拉布
随机导入
迷你绘图工具类:
'''
使用皮拉布绘制直线的迷你工具
'''
basecolors=['红色','绿色','黄色','蓝色','黑色','青色','洋红色]
def __init__(self,baseConfig):
自我。fig size=基本配置。get('无花果大小',无)
self.axis=baseConfig.get('axis ',None)
自我。title=基本配置。get(' title ',' NoName ')
自我。y标签=基本配置。get(' y标签',' NoName ')
self.grid=baseConfig.get('grid ',False)
自我。xaxis _ locator=基本配置。get(' xaxis _ locator ',None)
自我。ya xis _ locator=基本配置。get(' ya xis _ locator ',无)
自我。图例_位置=基本配置。get(' legend _ loc ',0)
if self.figsize!=无:
皮拉布。图(fig size=self。图尺寸)
如果self.axis!=无:
pylab.axis(自身轴)
pylab.title(自我标题)
pylab.ylabel(self.ylabel)
ax=pylab.gca()
pylab.grid(自我网格)
if self.xaxis_locator!=无:
斧头。xaxis。设置主要定位器(pylab .多重定位器(自我。x轴_定位器))
if self.yaxis_locator!=无:
斧头。雅克斯。设置主要定位器(pylab .多重定位器(自我。ya xis _ locator))
self.lineList=[]
self.id=1
def addline(self,lineConf):
self.lineList.append((self.id,lineConf))
self.id=1
return {'id' : self.id - 1}
def removeline(self,lineId):
对于范围内的我(len(self。行列表)):
id,conf=self.lineList[i]
如果id==lineId:
del self.lineList[i
破裂
否则:
返回{ '状态':-1}
打印镜头(self.lineList)
返回{ '状态':0}
def __parselineConf(self,lineConf):
X=lineConf['X']
Y=lineConf['Y']
marker=lineConf.get('marker ',None)
color=lineConf.get('color ',random。选择(miniplottool。基色))
标记面颜色=线路确认。get('标记面颜色',颜色)
label=lineConf.get('label ',' NoName ')
线条宽度=线条形状。get('线宽',1)
线路样式=线路配置。get('线条样式','-')
返回x,Y,标记,颜色,标记面颜色,标签,线宽,线型
def plotsingeline(self,lineConf):
x,Y,标记,颜色,标记面颜色,标签,线宽,linestyle=self .__parselineConf(lineConf)
pylab.plot(X,Y,marker=marker,color=color,marker face color=marker face color,label=label,linewidth=linewidth,linestyle=linestyle)
皮拉布。图例(loc=self。legend _ loc)
定义图(自身) :
colors=[miniplottool。基色[I % len(miniplottool。基色)]用于范围内的I(len(self。行列表))]
对于范围内的我(len(self。行列表)):
id,conf=self.lineList[i]
if conf.get('color ',None):
conf['color']=colors[i]
x,Y,标记,颜色,标记面颜色,标签,线宽,linestyle=self .__parselineConf(conf)
pylab.plot(X,Y,marker=marker,color=color,marker face color=marker face color,label=label,linewidth=linewidth,linestyle=linestyle)
皮拉布。图例(loc=self。legend _ loc)
定义显示(自我) :
pylab.show()
if __name__=='__main__ ':
#测试
baseConfig={
#'figsize' : (6,8),
# '轴':[0,10,0,10],
# '标题':'你好标题,
#'ylabel ':'你好伊拉贝尔,
' grid' : True,
#'xaxis_locator' : 0.5,
#'yaxis_locator' : 1,
# '图例_位置':'右上'
}
工具=迷你绘图工具(基本配置)
X=[ i for i in range(10)]
y=[对于范围(10)中的I,random.randint(1,10)]
y2=[对于范围(10)中的I,random.randint(1,10)]
lineConf={
X' : X,
Y' : Y
# '标记':' x ',
# '颜色':' b ',
#'markerfacecolor' : 'r ',
# '标签':' 222 ',
# '线宽':3,
# '线条样式':'-'
}
lineConf2={
X' : X,
Y' : Y2,
标记':' o ',
颜色':' b ',
markerfacecolor' : 'r ',
标签:“222”,
'线宽':3,
线条样式':'-'
}
# tool . plotsingeline(line conf)
print tool.addline(lineConf)
print tool.addline(lineConf2)
#print tool.removeline(1)
tool.plot()
tool.show()
操作效果图如下:
引用自:https://sites.google.com/site/guyingbo/matplotlib's研究笔记
线条属性:
颜色(颜色缩写为c):
蓝色:“b”(蓝色)
绿色:“g”(绿色)
红色:“r”(红色)
蓝绿色(深绿色):‘c’(青色)
红紫色(洋红色):‘m’(洋红色)
黄色:“y”(黄色)
黑色:“k”(黑色)
白色:“w”(白色)
灰度:例如0.75(在[0,1]中的任何浮点数)
RGB符号:例如' #2F4F4F '或(0.18,0.31,0.31)
html中任何合法的颜色都意味着:例如“红色”、“深色灰色”
线型(linestyle缩写为ls):
实线:'-'
虚线:'-'
虚线:'-. '
虚线:':'
要点:'.'
类型(标记):
像素:','
圆圈:“o”
上面的三角形:“”
下三角形:“v”
左三角形:“”
直角三角形:“”
正方形:“s”
加号:“”
分叉:“x”
棱镜:“d”
细棱柱:“d”
三脚架放下:“1”(即雅)
三脚架向上:“2”
面向左侧的三脚架:“3”
面向右侧的三脚架:“4”
六边形:“h”
旋转六角:“h”
五边形:“p”
竖线:“|”
水平线:“_”
gnuplot中的步骤:“步骤”(只能在kwarg中使用)
标记大小(markersize缩写为ms):
Markersize:实数
Markeredgewidth(简称mew):
Markeredgewidth:实数
Markeredgecolor(简称mec):
Markeredgecolor:颜色选项中的任何值。
Markerfacecolor(简称mfc):
Markerfacecolor:颜色选项中的任何值。
透明度(alpha):
Alpha:介于[0,1]之间的浮点数
线宽:
线宽:实数
对更多Python相关内容感兴趣的读者可以查看我们的专题:《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》和《Python文件与目录操作技巧汇总》。
希望本文对Python编程有所帮助。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。