gpt4 book ai didi

python - 如何在右侧绘制 yticks 并保留经典的左侧

转载 作者:行者123 更新时间:2023-12-04 07:39:59 24 4
gpt4 key购买 nike

我想绘制一些数据并在右侧添加一个 ytick,但是当我这样做时,左侧的刻度消失了,我想保留它。有人能帮助我吗 ?我看过其他帖子,但他们都在使用 ax.命令,我不熟悉这个,我只使用 plt.职能。
我使用了这些命令:

plt.yticks([seuil1,seuil2],["20%","20%"])
plt.tick_params(axis='y',labelleft=False,labelright=True)
没有 yticks 的情节:
Plot without yticks
用 yticks 右侧绘图:
Plot with yticks right side
如您所见,左侧消失了。

最佳答案

关于使用plt的区别和 ax这是使用 matplotlib 的两种不同风格;它们分别是 pyplot 和面向对象的风格。
使用 pyplot 样式的 matplotlib 创建和管理图形和轴,您可以使用 plt.操作它们的函数。
使用面向对象的风格,您可以明确地创建图形和轴( fig, ax = plt.subplots() ),然后在 fig 上调用方法。或 ax来操纵他们。这是我在示例中采用的方法。
看看matplotlib usage guide和他们的 tutorials了解如何创建和自定义绘图。

这里要使用 twinx 创建另一个共享 x 轴的轴,允许您将其他 yticks 定位在右侧的 y 轴上。我已经在每一行上面评论了该行正在做什么。

# Create a figure and ax
fig, ax = plt.subplots()

# Get data
x = np.linspace(0, 10, 101)
y = 1 / x

# Plot the data
ax.plot(x, y, label=r"$f(x)=\frac{1}{x}$")
# Place legend
ax.legend(loc="upper right")

# Create a second y-axis
y2 = ax.twinx()
# Copy the y limits from the left axis
y2.set_ylim(ax.get_ylim())
# Set the right y-yick positions
y2.set_yticks([2, 6])
# Set the right y-tick labels
y2.set_yticklabels(["A", "B"])
其中产生:
Graph of y = 1/x with right tick labels

关于python - 如何在右侧绘制 yticks 并保留经典的左侧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67538091/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com