Octave中的函数句柄定义如下.
f = @sin;
Run Code Online (Sandbox Code Playgroud)
从现在开始,调用函数f(x)与调用具有相同的效果sin(x).到现在为止还挺好.我的问题从下面的一个编程任务开始.
function sim = gaussianKernel(x1, x2, sigma)
Run Code Online (Sandbox Code Playgroud)
上面的行代表函数的标题gaussianKernel.这需要三个变量作为输入.但是,下面的调用让我心烦意乱,因为它只传递了两个变量,然后传递了三个变量gaussianKernel.
model = svmTrain(X, y, C, @(x1, x2) gaussianKernel(x1, x2, sigma));
Run Code Online (Sandbox Code Playgroud)
不应该那么简单model = svmTrain(X, y, C, @gaussianKernel(x1, x2, sigma));吗?有什么不同?
如何使用networkx获取节点的线边界?见下图。我的问题是由于白色节点。无论颜色如何,我都想展示它们的形状。与其他节点相比,请参见节点 4。
代码示例
import networkx as nx
import matplotlib.pyplot as plot
g= {1: [2, 3],
2: [2, 3, 4],
3: [1, 2],
4: [2]}
graph= nx.Graph()
for v in g:
graph.add_node(v)
for v in g:
for u in g[v]:
graph.add_edge(v, u)
nx.draw_networkx(graph, node_color=['r', 'r', 'r', 'w'], node_shape='o')
plot.axis('off')
plot.show()
Run Code Online (Sandbox Code Playgroud)
输出