我正在尝试使用python3来返回由http://www.doi2bib.org/生成的bibtex引文.url是可预测的,因此脚本可以在不必与网页交互的情况下计算出url.我尝试过使用selenium,bs4等,但无法获取文本框内的文字.
url = "http://www.doi2bib.org/#/doi/10.1007/s00425-007-0544-9"
import urllib.request
from bs4 import BeautifulSoup
text = BeautifulSoup(urllib.request.urlopen(url).read())
print(text)
Run Code Online (Sandbox Code Playgroud)
任何人都可以建议在python中将bibtex引用作为字符串(或其他)返回的方法吗?
是否有任何颜色图或是否有一种简单的方法来转换 matplotlib 颜色图以提供接近 0.5 的更大颜色范围和在极端情况下更小的颜色范围?我正在创建一堆子图,其中一个的颜色值大约是其他图的 10 倍,所以它的值占主导地位,其余的图看起来都一样。对于一个简单的例子,我们有:
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(1,10,10)
y = np.linspace(1,10,10)
t1 = np.random.normal(2,0.3,10)
t2 = np.random.normal(9,0.01,10)
t2_max = max(t2)
plt.figure(figsize=(22.0, 15.50))
p = plt.subplot(1,2,1)
colors = plt.cm.Accent(t1/t2_max)
p.scatter(x, y, edgecolors=colors, s=15, linewidths=4)
p = plt.subplot(1,2,2)
colors = plt.cm.Accent(t2/t2_max)
p.scatter(x, y, edgecolors=colors, s=15, linewidths=4)
plt.subplots_adjust(left=0.2)
cbar_ax = plt.axes([0.10, 0.15, 0.05, 0.7])
sm = plt.cm.ScalarMappable(cmap=plt.cm.Accent, norm=plt.Normalize(vmin=0, vmax=t2_max))
sm._A = []
cbar = plt.colorbar(sm,cax=cbar_ax)
plt.show()
Run Code Online (Sandbox Code Playgroud)
t1 中的变化比 t2 中的多得多,但是由于 t2 的值很高,所以无法看到变化。我想要的是一张地图,它将在 t1 …