python通过文本在一个图中画多条线的实例

所属分类: 脚本专栏 / python 阅读数: 955
收藏 0 赞 0 分享

废话不多说,直接上代码吧!

import matplotlib.pyplot as plt
import numpy as np
 
data1 = np.loadtxt('/data_1/SSD/caffe/tools/extra/DSOD300_VOC0712_DSOD300_300x300.log.test')
data2 = np.loadtxt('/data_1/SSD/caffe/tools/extra/DSOD300_VOC0712_DSOD300_300x300.log.train')
 
plt.title('Result Analysis')
 
plt.plot(data1[:,0], data1[:,2], color='skyblue', label='y1')
plt.plot(data2[:,0], data2[:,3], color='blue', label='y2')
plt.legend()
 
plt.xlabel('x')
plt.ylabel('y')
plt.show()

结果:

加一些不同形式的线

import matplotlib.pyplot as plt
import numpy as np
 
data1 = np.loadtxt('/data_1/project_test/teest1.txt')
data2 = np.loadtxt('/data_1/project_test/teest2.txt')
data3 = np.loadtxt('/data_1/project_test/teest3.txt')
 
plt.title('Result Analysis')
 
plt.plot(data1[:,0], data1[:,1], color='skyblue', label='y1',ls='-.')#ls或linestyle
plt.plot(data2[:,0], data2[:,1], color='green', label='y2',ls=':')
plt.plot(data3[:,0], data3[:,1], color='red', label='y3',ls='steps')
plt.legend()
 
plt.xlabel('x')
plt.ylabel('y')
plt.show()


加标记

import matplotlib.pyplot as plt
import numpy as np
 
data1 = np.loadtxt('/data_1/project_test/teest1.txt')
data2 = np.loadtxt('/data_1/project_test/teest2.txt')
data3 = np.loadtxt('/data_1/project_test/teest3.txt')
 
plt.title('Result Analysis')
 
plt.plot(data1[:,0], data1[:,1], color='skyblue', label='y1',ls='-.',marker='*')
plt.plot(data2[:,0], data2[:,1], color='green', label='y2',ls=':',marker='+')
plt.plot(data3[:,0], data3[:,1], color='red', label='y3',ls='steps',marker='D')
plt.legend()
 
plt.xlabel('x')
plt.ylabel('y')
plt.show()

总结:

linestyle or ls:实线'-' , 破折线'--' , 点划线'-.' ,虚线':'

plt.plot()参数设置
Property Value Type
alpha 控制透明度,0为完全透明,1为不透明
animated [True False]
antialiased or aa [True False]
clip_box a matplotlib.transform.Bbox instance
clip_on [True False]
clip_path a Path instance and a Transform instance, a Patch
color or c 颜色设置
contains the hit testing function
dash_capstyle [‘butt' ‘round' ‘projecting']
dash_joinstyle [‘miter' ‘round' ‘bevel']
dashes sequence of on/off ink in points
data 数据(np.array xdata, np.array ydata)
figure 画板对象a matplotlib.figure.Figure instance
label 图示
linestyle or ls 线型风格[‘-' ‘–' ‘-.' ‘:' ‘steps' …]
linewidth or lw 宽度float value in points
lod [True False]
marker 数据点的设置[‘+' ‘,' ‘.' ‘1' ‘2' ‘3' ‘4']
markeredgecolor or mec any matplotlib color
markeredgewidth or mew float value in points
markerfacecolor or mfc any matplotlib color
markersize or ms float
markevery [ None integer (startind, stride) ]
picker used in interactive line selection
pickradius the line pick selection radius
solid_capstyle [‘butt' ‘round' ‘projecting']
solid_joinstyle [‘miter' ‘round' ‘bevel']
transform a matplotlib.transforms.Transform instance
visible [True False]
xdata np.array
ydata np.array

zorder any number

补充拓展:python 画直线和平面实例

画直线

from mpl_toolkits.axisartist.axislines import SubplotZero
import matplotlib.pyplot as plt
import numpy as np
 
fig = plt.figure(1)
ax = SubplotZero(fig, 111)
fig.add_subplot(ax)
 
for direction in ["xzero", "yzero"]:
  # adds arrows at the ends of each axis
  ax.axis[direction].set_axisline_style("-|>")
 
  # adds X and Y-axis from the origin
  ax.axis[direction].set_visible(True)
 
for direction in ["left", "right", "bottom", "top"]:
  # hides borders
  ax.axis[direction].set_visible(False)
  
plt.text(-2, 2, r"y=kx+b",
     horizontalalignment='center', fontsize=20)  
  
x = np.linspace(-2,2,100)  
   
k=-1
b=0  
  
y = k*x + b
 
ax.plot(x, y)
plt.show()

画平面

import matplotlib.pyplot as plt
from matplotlib import cm
import numpy as np
 
fig = plt.figure()
ax = fig.gca(projection='3d')
 
# Make data.
X = np.arange(-5, 5, 0.25)
Y = np.arange(-5, 5, 0.25)
X, Y = np.meshgrid(X, Y)
a1 = 2
a2 = 1
Z = a1*X+a2*Y
 
# Plot the surface.
surf = ax.plot_surface(X, Y, Z, cmap=cm.Blues,
            linewidth=0, antialiased=False)
 
ax.set_xlabel(r'$x_1$',fontsize = 20, color = 'blue')
ax.set_ylabel(r'$x_2$',fontsize = 20, color = 'blue')
ax.set_zlabel(r'$x_3$',fontsize = 20, color = 'blue')

以上这篇python通过文本在一个图中画多条线的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

Python实现图像几何变换

这篇文章主要介绍了Python实现图像几何变换的方法,实例分析了Python基于Image模块实现图像翻转、旋转、改变大小等操作的相关技巧,非常简单实用,需要的朋友可以参考下
收藏 0 赞 0 分享

Python中的urllib模块使用详解

这篇文章主要介绍了Python中的urllib模块使用详解,是Python入门学习中的基础知识,需要的朋友可以参考下
收藏 0 赞 0 分享

Python的多态性实例分析

这篇文章主要介绍了Python的多态性,以实例形式深入浅出的分析了Python在面向对象编程中多态性的原理与实现方法,需要的朋友可以参考下
收藏 0 赞 0 分享

python生成IP段的方法

这篇文章主要介绍了python生成IP段的方法,涉及Python文件读写及随机数操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python操作redis的方法

这篇文章主要介绍了python操作redis的方法,包括Python针对redis的连接、设置、获取、删除等常用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python妹子图简单爬虫实例

这篇文章主要介绍了python妹子图简单爬虫,实例分析了Python爬虫程序所涉及的页面源码获取、进度显示、正则匹配等技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

分析用Python脚本关闭文件操作的机制

这篇文章主要介绍了分析用Python脚本关闭文件操作的机制,作者分Python2.x版本和3.x版本两种情况进行了阐述,需要的朋友可以参考下
收藏 0 赞 0 分享

python实现搜索指定目录下文件及文件内搜索指定关键词的方法

这篇文章主要介绍了python实现搜索指定目录下文件及文件内搜索指定关键词的方法,可实现针对文件夹及文件内关键词的搜索功能,需要的朋友可以参考下
收藏 0 赞 0 分享

python中getaddrinfo()基本用法实例分析

这篇文章主要介绍了python中getaddrinfo()基本用法,实例分析了Python中使用getaddrinfo方法进行IP地址解析的基本技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

python查找指定具有相同内容文件的方法

这篇文章主要介绍了python查找指定具有相同内容文件的方法,涉及Python针对文件操作的相关技巧,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多