用偏移量块对角矩阵Python

时间:2019-04-26 21:41:38

标签: numpy

Numpy提供了一种使用偏移量从单个元素创建对角矩阵的方法。现在,我有了一个2 * 2块的列表,而不是单个元素,它们沿着具有指定偏移量的对角线插入。 以下是11个2 * 2数组的块,它们应该沿着24 * 24矩阵的+1偏移量放置。我知道scipy.linalg.block_diag可以为(隐式)偏移量零创建块对角线。

通常,我有一个2 * 2块数组的列表,我想沿着与2 * 2主块对角线相对的指定偏移量插入这些块

fetch

1 个答案:

答案 0 :(得分:1)

您可以通过在宽度和高度零的数组之前和之后添加#container{ position: relative; width: 200px; height: 400px; background-color: #cde } svg#myFancyBorder{ position: absolute; width: 100%; height: auto; }来创建偏移量:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="checkbox" id="resize" /><label for="resize">Fit border to container</label>
    <div id="container">
<!-- Notice that there's no width, height, x or y attribute, since we're trying to keep it simple. -->
<!-- Also notice that the viewBox HAS to start with '0 0' since this is the point where SVG images scale from! -->	
      <svg version="1.1" id="myFancyBorder" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 277.5 237.5">
    		<rect id="top" width="277.5" height="55"/>
    		<g id="sides">
    			<line fill="none" stroke="#000000" stroke-width="5" x1="2.5" y1="55" x2="2.5" y2="182.5"/>
    			<line fill="none" stroke="#000000" stroke-width="5" x1="275" y1="55" x2="275" y2="182.5"/>
    		</g>
    		<rect id="bottom" y="182.5" width="277.5" height="55"/>
    	</svg>
    </div>