python使用matplotlib绘制二维坐标轴,设置箭头指向,文本内容

我们在使用matplotlib绘制图像时,默认的坐标轴是在左下角,这样对于一些曲线的显示就不太清楚。如下:
在这里插入图片描述

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-10, 10, 100)
y1 = 2 * x
y2 = x * x

plt.figure()
plt.xlabel('X axis')
plt.ylabel('Y axis')
plt.plot(x, y1, linestyle='--')
plt.plot(x, y2)

plt.show()

根据X和Y绘制两条曲线,直接绘制的话,坐标轴就在左下角。对于曲线的展示不清楚,比如我们想把(0,0)点作为坐标轴原点。可以参考下面的方法。

1.更改坐标轴的位置

可以看到,默认绘图是四个边把图像框起来了。spine() 这个单词的意思是脊梁,就是包围图表的线条。如下:
在这里插入图片描述分为 top,bottom,left,right 上下左右四条边。我们的方法就是隐藏右边和上边,然后移动左边和下边,移动到想要的位置。

  1. 首先要获取整张图像的坐标,方法是
ax = plt.gca()  # 获取整张图像的坐标的对象
  1. 隐藏起来两条边,右边和上边
# 将右边,上边的两条边颜色设置为空 其实就相当于抹掉这两条边
ax.spines[‘right’].set_color(‘none’)
ax.spines[‘top’].set_color(‘none’)
  1. 移动左边和下边,指定为为x轴和y轴
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')
  1. 设置坐标轴交点
# 设置(0,0)为两坐标轴的交点
ax.spines[‘bottom’].set_position
  • 4
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python绘制箭头坐标轴可以使用matplotlib库。首先,需要导入相应的模块和库。然后,可以使用axisartist.Subplot函数创建一个子图对象,并将其添加到图形中。接下来,可以使用set_axisline_style方法设置底部和左侧坐标轴箭头样式。通过set_visible方法可以隐藏顶部和右侧的坐标轴。然后,可以使用scatter函数绘制散点图,并使用xticks函数设置x轴刻度标签。最后,使用ylabel函数设置y轴标签。\[1\] 如果想要在绘制曲线时添加箭头标注表达式,可以使用annotate函数。其中,s参数表示标注内容,xy参数表示基准点的坐标,xycoords参数表示基准点坐标的参考系,xytext参数表示注释文字的坐标位置,textcoords参数表示注释文字坐标的参考系,arrowprops参数描述箭头的样式和属性。\[2\] 如果想要移动坐标轴绘制图像,可以使用spines和set_position方法。首先,使用gca函数获取当前坐标轴对象。然后,使用spines方法设置右边和上边的边颜色为空,相当于抹掉这两条边。接着,使用set_ticks_position方法指定下边的边作为x轴,左边的边作为y轴。使用set_position方法将底部边绑定到y轴的0点上,将左边边绑定到x轴的0点上。最后,使用plot函数绘制曲线。\[3\] 综上所述,可以使用以上方法在Python绘制箭头坐标轴和添加箭头标注表达式。 #### 引用[.reference_title] - *1* [绘画带箭头的xy坐标轴](https://blog.csdn.net/qq_39474168/article/details/126869369)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [python使用matplotlib绘制二维坐标轴设置箭头指向文本内容](https://blog.csdn.net/weixin_44052055/article/details/120039984)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值