python如何绘制坐标箭头?

1. 原始的

不加任何设定,一般的x-y坐标轴是不带箭头且是一个封闭的矩形。

p1.jpg

代码:

import matplotlib.pyplot as plt  #导入matplotlib库
import numpy as np  #导入numpy库
#生成x步长为0.1的列表数据
x = np.arange(-15,15,0.1)
#生成sigmiod形式的y数据
y=1/(1+np.exp(-x))
#设置x、y坐标轴的范围
plt.xlim(-12,12)
plt.ylim(-1, 1)
#绘制图形
plt.plot(x,y, c='b')
plt.show()

2. 设置坐标轴

matplotlib的辅助工具,包含一系列对坐标轴设置的框架。其中的axisartist包就用来设置坐标轴的类型。

将原始坐标轴均隐藏掉——添加新的基于原点的x与y轴——为新坐标轴加入箭头,并设置刻度显示方式——加入图形。

效果:

p2.jpg

代码:

import matplotlib.pyplot as plt  #导入matplotlib库
import numpy as np  #导入numpy库
#创建画布并引入axisartist工具。
import mpl_toolkits.axisartist as axisartist
#创建画布
fig = plt.figure(figsize=(8, 8))
#使用axisartist.Subplot方法创建一个绘图区对象ax
ax = axisartist.Subplot(fig, 111)  
#将绘图区对象添加到画布中
fig.add_axes(ax)
ax.axis[:].set_visible(False)#通过set_visible方法设置绘图区所有坐标轴隐藏
ax.axis["x"] = ax.new_floating_axis(0,0)#ax.new_floating_axis代表添加新的坐标轴
ax.axis["x"].set_axisline_style("->", size = 1.0)#给x坐标轴加上箭头
#添加y坐标轴,且加上箭头
ax.axis["y"] = ax.new_floating_axis(1,0)
ax.axis["y"].set_axisline_style("-|>", size = 1.0)
#设置x、y轴上刻度显示方向
ax.axis["x"].set_axis_direction("top")
ax.axis["y"].set_axis_direction("right")
#在带箭头的x-y坐标轴背景下,绘制函数图像
#生成x步长为0.1的列表数据
x = np.arange(-15,15,0.1)
#生成sigmiod形式的y数据
y=1/(1+np.exp(-x))
#设置x、y坐标轴的范围
plt.xlim(-12,12)
plt.ylim(-1, 1)
#绘制图形
plt.plot(x,y, c='b')
plt.show()

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » python如何绘制坐标箭头?