我希望我的 y 轴以科学记数法进行格式化。
我已经尝试过matplotlib 文档,但它忽略了我的命令。
import matplotlib.pyplot as plt
import numpy as np
x = np.random.randint(1e4, size=200)
y = np.random.randint(1e4, size=200)
plt.ticklabel_format(axis='both', style='sci')
plt.xlabel('x')
plt.ylabel('y')
plt.scatter(x,y, color='b', s=5, marker=".")
plt.show()
Run Code Online (Sandbox Code Playgroud)
我的输出只是以非科学符号出现。
例如,我希望 ylabel1000为1E03.
这段代码只是一个例子。
我有一个子图,其中图 1 和图 3 使用科学记数法,但图 2 使用非科学记数法。
谢谢。
我有一个使用 for 循环的程序,但它太慢了,我需要加快速度。
我有一个逆序概率列表,其总和为 1。有超过 500 万个项目。
我想取最高的概率,即总和为 0.9999 的前 n 个项目。
这是我的代码:
for b in sorted_list:
new_list.append(b)
if sum(new_list) > 0.9999:
break
Run Code Online (Sandbox Code Playgroud)
谁能建议一种更快的方法?
谢谢
编辑:我发现这个问题之前被问过 - stackexchange 链接
然而,这些建议都使用循环,所以我认为它们不会更快。最后有人建议使用列表理解。所以我要去谷歌搜索一下,看看这意味着什么!谢谢