在 X 轴和 Y 轴上使用箭头进行绘图

问题描述 投票:0回答:1

我想绘制一个图形,其中 x 轴右侧有一个箭头,y 轴顶部和底部有两个箭头。 X 轴也应该位于右侧。

import matplotlib.pyplot as plt
import numpy as np

# Create some sample data
x = np.linspace(0, 10, 100)
y = np.sin(x)

# Create the figure and axis objects
fig, ax = plt.subplots(figsize=(8, 6))

# Plot the data
ax.plot(x, y)

# Remove the top and right spines
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.spines['bottom'].set_position('center')

# Add arrows to the y-axis
#ax.spines['left'].set_visible(False)

# Add arrowheads
#

# Set labels and title
ax.set_xlabel('X-axis')
ax.set_ylabel('Y-axis')
#ax.set_title('Plot with Arrows on Y-axis')

# Display the plot
plt.show()

enter image description here

python matplotlib plot
1个回答
0
投票

我认为这个问题将被关闭,因为它是重复的,但我无论如何都会发布一个答案,因为我只是在我的一个地块上使用了相同的答案。

因此您可以使用

ax.annotate
来实现此目的,如

ax.annotate('', xy=(max(np.log(t)), 0), xytext=(max(np.log(t))-0.0001, 0), 
            arrowprops=dict(facecolor='black', arrowstyle='->', lw=1))   # you should change the coordinates according to your data on the x-axis
© www.soinside.com 2019 - 2024. All rights reserved.