我想绘制一个图形,其中 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()
我认为这个问题将被关闭,因为它是重复的,但我无论如何都会发布一个答案,因为我只是在我的一个地块上使用了相同的答案。
因此您可以使用
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