我有带有colorbar的散点图,我将其另存为PNG图像。我需要该图具有一定的figsize,但要添加颜色条缩放原始图。
import pylab as plt
plt.figure(figsize=FIGSIZE)
plt.scatter(X, Y, c=Z, s=marker_size, norm=LogNorm(), vmin=VMIN, vmax=VMAX, cmap=CMAP,rasterized=True,lw=0,)
CB = plt.colorbar(ticks=TICKS, format=FORMAT)
Run Code Online (Sandbox Code Playgroud)
如何将原始图(按上述设置figsize)和颜色栏保存为两个单独的图像?
我正在创建一个包含两个uicontrol对象的MATLAB GUI:一个按钮和一个列表框.我使用按钮将文件名添加到列表框中.当我从m文件运行GUI时,它工作正常.仅当我运行.fig文件本身时才会出现此问题.这是回调代码和错误:
function add_file_Callback(hObject, eventdata, handles)
% hObject handle to add_file (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%gets input file(s) from user
[input_file,pathname] = uigetfile( ...
{'*.jpg;*.tif;*.png;*.gif;*.bmp;*.pgm'}, ...
'Select files', ...
'MultiSelect', 'on');
%if file selection is cancelled, pathname should be zero
%and nothing should happen
if pathname == 0
return
end
%gets the current data file names inside the listbox …Run Code Online (Sandbox Code Playgroud) testVector =
1.0e+10 *
3.5688 3.1110 5.2349
Run Code Online (Sandbox Code Playgroud)
是否有可能取出一个向量的指数(不确定它叫什么)并将其存储为变量?例如,在这种情况下,变量将具有值1.0e+10
我有一个L张量(ndarray对象)列表,每个都有几个索引.我需要根据连接图收缩这些指数.
连接被编码在元组列表中,((m,i),(n,j))表示" 将张量的第i个索引与张量L[m]的第j个索引收缩" L[n].
如何处理非平凡连接图?第一个问题是,只要我收缩一对索引,结果就是一个不属于列表的新张量L.但即使我解决了这个问题(例如,通过为所有张量的所有索引提供唯一标识符),也存在一个问题,即人们可以选择任何顺序来执行收缩,而某些选择会在计算中期产生不必要的巨大影响(即使最终结果很小).建议?
我有一个像这样的索引列表:
selected_coords = [[1, 8, 30], [15, 4, 6] ,...]
Run Code Online (Sandbox Code Playgroud)
和这样的值列表:
differences = [1, 5, 8, 2, ...]
Run Code Online (Sandbox Code Playgroud)
两者都有 500 个条目。现在我想在正确的索引上用这些值填充一个 3d numpy 数组。我试图做的是以下内容:
brain_map = np.zeros(shape=(48,60,22))
for i, index in enumerate(selected_coords):
ind = list(map(int, index))
brain_map[ind] = differences[i]
Run Code Online (Sandbox Code Playgroud)
如果我在这个循环中打印索引和值,我会得到正确的格式,但是如果我在循环之后打印矩阵,似乎这些值已经被多次放入那里而不是仅仅放在指定的索引上。我究竟做错了什么?
我有一个包含以下整数的 numpy 数组:
[10 30 16 18 24 18 30 30 21 7 15 14 24 27 14 16 30 12 18]
Run Code Online (Sandbox Code Playgroud)
我想将它们标准化为 1 到 10 之间的范围。
我知道规范化数组的一般公式是:
但是我应该如何在 1 到 10 之间缩放它们?
问题:将此数组规范化为 1 到 10 之间的值的最简单/最快的方法是什么?
我需要使用字符串制作一个iPhone模型列表.split().
这不是问题,但我还必须使用0-9中的随机数来挑选一个单词,然后使用while/for循环显示3个随机单词.
在我的代码中,当我输入:
import random
iPhone = 'Original 3G 3GS 4 4S 5 5C 5S 6 6Plus'.split()
z = 0
while z < 4:
for y in range (1,3):
for x in iPhone:
x = random.randint(0,10)
print (iPhone[x])
Run Code Online (Sandbox Code Playgroud)
它说:
Traceback (most recent call last):
File "C:\Users\zteusa\Documents\AZ_wordList2.py", line 15, in <module>
print (iPhone[x])
IndexError: list index out of range
Run Code Online (Sandbox Code Playgroud)
我不确定是什么造成的.
过去两天我在一个大型 Fortran 项目中调试了一个看似无意义的段错误。当我将代码移到自己的计算机上时,问题就开始了,段错误出现在代码的一部分中,而该部分代码多年来在其他几个系统上都运行良好。我最终找到了段错误的根源,但它是如此令人惊讶的意外(并且依赖于编译器),所以我决定将其发布在这里。
考虑以下 MWE:
program dafuq
implicit none
integer :: a=1
integer, parameter :: b=2
call foo(a,b)
end program dafuq
subroutine foo(a,b)
implicit none
integer, intent(inout) :: a, b
a=b !OK
b=a !causes segfault
end subroutine foo
Run Code Online (Sandbox Code Playgroud)
我可以访问两个 HPC 集群,它们与我的笔记本电脑一起允许我检查这些(有时有点旧)编译器:
事实证明,所有四个编译器都会对上述代码产生段错误,因为变量b被声明为parameter. 因此,在子例程中更改其值是违规的。intent我的问题是,只有最新的 gfortran 在编译期间显示警告(即使使用 -Wall),如果我省略子例程中的规范,该警告也会消失。我怀疑在 C++ 中使用const变量的相同设置会引发一个巨大的危险信号。
现在,为了使其更加晦涩,请考虑以下代码,其中使用数组而不是标量:
program dafuq_array
implicit none
integer :: a(2)=(/1,1/)
integer, parameter :: b(2)=(/2,2/)
call foo(a,b)
end …Run Code Online (Sandbox Code Playgroud) 我想将一个名为myfile.m的特定m文件加载到我的工作区.这个matlab文件包含几个我需要加载到工作区的数组.
-------------------------- myfile.m --------------------- -------------
r_red=[218,2,1,12,238,106,246,14,26,77,244];
r_green=[65,61,37,247,151,217,229,235,218,2,1];
r_blue =[14,26,77,244,164,131,119,9,222,80,61,228];
Run Code Online (Sandbox Code Playgroud)
在我的工作空间中,我试图通过使用这些数组运行此代码和一些其他支持代码.我使用的代码如下.
addpath('D:\mydocs'); % This is the place where myfile.m is located.
load myfile.m;
Run Code Online (Sandbox Code Playgroud)
当我运行这个时,我得到以下错误. 使用加载错误在ASCII文件D的第2行上显示未知文本:\ mydocs\keyfile.m"r_red = [218".
对此问题的任何评论都非常感谢.谢谢.
我在这个问题的一个答案中找到了这个说法。
这是什么意思?如果语句是“Python 从不隐式复制字典对象”,我不会有问题。我相信元组、列表、集合等在 python 中被认为是“对象”,但问题中描述的字典问题不会出现在它们身上。
python ×6
matlab ×3
numpy ×3
arrays ×1
button ×1
colorbar ×1
dictionary ×1
fortran ×1
function ×1
gfortran ×1
list ×1
listbox ×1
load ×1
matlab-guide ×1
matplotlib ×1
numpy-einsum ×1
object ×1
python-3.x ×1
random ×1
split ×1