这里是抽象的问题,每次lst都不一样,所以我想自动做
import matplotlib.pyplot as plt
import numpy as np
fig=plt.figure()
fig.set_size_inches(8,4)
lst=np.array ([0.1235,0.2322,0.3300])
#how can I directly pass these value to plt.text, without manually input
plt.text(0.05,0.6,r'a=0.124, b=0.232, c=0.330',fontsize=18)
plt.show()
Run Code Online (Sandbox Code Playgroud) text()为什么我不能根据这个指定 xycoords ?我只想将文本放在图的左上角。但是我不想使用默认的“数据”坐标。错误是:
属性错误:未知属性 xycoords
这是示例代码:
import numpy as np
import math
import matplotlib.pyplot as plt
def f(a,x):
return a*x
def g(a,x):
return 5*a*x
const=[1,2,3]
fig=plt.figure()
ax=fig.add_subplot(1,1,1)
colors=['r','b','g']
labels=[r'$a=1$',r'$a=2$',r'$a=3$']
xArray=np.linspace(0,2,20)
for i in const:
ax.plot(xArray,f(i,xArray),color=colors[i-1],label=labels[i-1])
ax.plot(xArray,g(i,xArray),color=colors[i-1],ls='--')
ax.text(-0.1, 1.1 ,'(a)',size=20,weight='bold',xycoords='axes fraction')
ax.legend(loc=0)
plt.show()
Run Code Online (Sandbox Code Playgroud) 请考虑python中的以下代码:
a = 10
def fun():
print(a)
fun()
Run Code Online (Sandbox Code Playgroud)
这在ipython笔记本中工作正常,输出是10.
在c ++中考虑以下代码:
#include <iostream>
void fun() {
std::cout << a << std::endl;
}
int main() {
int a = 10;
fun();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
编译时,错误是:
compare-fun.cpp: In function ‘void fun()’:
compare-fun.cpp:4:18: error: ‘a’ was not declared in this scope
std::cout << a << std::endl;
Run Code Online (Sandbox Code Playgroud)
我对python代码很困惑,为什么a即使a没有定义也可以调用fun?
假设我想生成两个随机变量X,Y这些变量是不相关的,并且均匀分布在[0,1].
生成这样的非常天真的代码是以下,它调用random函数两次:
import random
xT=0
yT=0
xyT=0
for i in range(20000):
x = random.random()
y = random.random()
xT += x
yT += y
xyT += x*y
xyT/20000-xT/20000*yT/20000
Run Code Online (Sandbox Code Playgroud)
然而,随机数实际上是由公式生成的伪随机数,因此它们是相关的.
如何生成两个不相关(或尽可能少的相关)随机变量?
我复制了q for mortals如下的确切示例:
q)h:hopen `:D:/q4m/raw
q)h[42]
548i
q)h 10 20 30
548i
q)hclose h
q)get `:D:/q4m/raw
'D:/q4m/raw
[0] get `:D:/q4m/raw
Run Code Online (Sandbox Code Playgroud)
查看目录,在那里创建文件.为什么我get不能呢?
相反,如果我这样做:
q)h:hopen `:D:/q4m/L
q)h[42]
628i
q)h[10 20 30]
628i
q)hclose h
q)get `:D:/q4m/L
0 1 2 3 4 42 10 20 30
Run Code Online (Sandbox Code Playgroud)
事情变得正常,为什么?