我弄乱了一些情节风格并遇到了好奇心。我有一个情节,twinx()
可以在右侧和左侧产生刻度。我想错开一些刻度,一些比其他的更远。
我可以向任何轴上的任何刻度添加填充并通过 推出文本ax.yaxis.get_major_ticks()[1].set_pad()
,但是当我尝试通过 延长刻度时ax.yaxis.get_major_ticks()[1].tick1line.set_markersize()
,它适用于除右侧之外的所有轴。任何见解?
请看下面的代码。我试过切换轴(ax1,ax2)和索引。
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
t = np.linspace(0,5)
x = np.exp(-t)*np.sin(2*t)
fig, ax1 = plt.subplots()
ax1.plot(t, x, alpha=0.0)
ax2 = ax1.twinx()
ax2.plot(t, x, alpha=1.0)
ax1.set_xticks([0,1,2])
ax1.set_yticks([0.1, 0.2])
ax2.set_yticks([0.3, 0.4, 0.5])
ax2.set_xticks([1,2,3])
ax1.grid(True, color='lightgray')
ax2.grid(True, color='lightgray')
for a in [ax1, ax2]:
a.spines["top"].set_visible(False)
a.spines["right"].set_visible(False)
a.spines["left"].set_visible(False)
a.spines["bottom"].set_visible(False)
ax1.set_axisbelow(True)
ax2.set_axisbelow(True)
ax1.xaxis.get_major_ticks()[1].set_pad(15) #
ax1.xaxis.get_major_ticks()[1].tick1line.set_markersize(15)
ax1.yaxis.get_major_ticks()[1].set_pad(15) #
ax1.yaxis.get_major_ticks()[1].tick1line.set_markersize(15)
ax2.yaxis.get_major_ticks()[1].set_pad(15) #
ax2.yaxis.get_major_ticks()[1].tick1line.set_markersize(15)
plt.savefig('fig.pdf')
plt.show()
Run Code Online (Sandbox Code Playgroud) 在 Selenium 上运行进程时,我会收到一个弹出窗口(这似乎是 Edge 浏览器本机的)。当尝试以下操作时:
browser.switch_to.alert.accept()
,
我收到错误
selenium.common.exceptions.NoAlertPresentException: Message: no such alert
我尝试等待弹出窗口出现一段时间,并尝试使用 Edge 选项,但无济于事。
我必须的另一个想法是模拟按向左箭头键,然后在弹出窗口变为活动状态时输入,但是我需要在 selenium 上选择特定元素,但未找到弹出窗口。
from msedge.selenium_tools import Edge, EdgeOptions
options = EdgeOptions()
options.add_experimental_option("prefs", {
"profile.default_content_setting_values.notifications": 1
})
browser = Edge(options=options)
Run Code Online (Sandbox Code Playgroud)
也许这是一种不同类型的警报?