当试图在python中运行一个简单的动画示例代码时,我收到一个我无法解决的错误.
Traceback (most recent call last):
File "D:/CG/dynamic_image2.py", line 29, in <module>
ani.save('dynamic_images.mp4')
File "C:\Python27\lib\site-packages\matplotlib\animation.py", line 127, in save
self._make_movie(filename, fps, codec, frame_prefix)
File "C:\Python27\lib\site-packages\matplotlib\animation.py", line 164, in _make_movie
stdout=PIPE, stderr=PIPE)
File "C:\Python27\lib\subprocess.py", line 679, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 893, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
Run Code Online (Sandbox Code Playgroud)
我发现了类似的情况(link1,link2),但我仍然不知道如何解决我的...
我正在使用:Python 2.7.2 | EPD 7.2-2(32位)| (默认情况下,2011年9月14日,11:02:05)[winv上的MSC v.1500 32位(英特尔)]
我希望有人可以帮助我!
我正在查看用 Fortran 编写的空气质量模型的代码,并且对 fortran 从 do 循环中传递变量的方式有一些疑问。
这个非常简单的例子说明了我的意思:
PROGRAM carla
IMPLICIT NONE
!
INTEGER, PARAMETER :: LM = 24, DEZASSEIS = 16
INTEGER :: L, VARIAVEL, SOMA
!
DO L=1,LM
WRITE(*,*) 'L = ', L
END DO
!
WRITE(*,*) 'I am now ouside of the DO loop.'
WRITE(*,*) 'I would expect L=LM=24... And SOMA=40'
WRITE(*,*) 'L = ', L
SOMA = DEZASSEIS + L
WRITE(*,*) 'SOMA = ', SOMA
END PROGRAM carla
Run Code Online (Sandbox Code Playgroud)
我希望 L=LM=24... 而 SOMA=40... 但我得到:
L = 25 …Run Code Online (Sandbox Code Playgroud) 当我使用matplotlib绘制具有蒙版值的数组时countourf,蒙版值显示为白色.我希望它们显得灰色.
我尝试了这个set_bad方法,但它似乎countourf无法识别它(虽然它识别set_over和set_under方法).
我还可以使用其他方法contourf吗?
或将我不得不改变我的代码使用imshow,其理解set_bad的相反,countourf?
我想绘制一些数据(0到18之间),但我希望颜色条显示0到40之间的范围.经过几个在线示例,我不知道如何实现我需要的!
这是一个简单的例子:
import matplotlib.pyplot as plt
import numpy as np
rd = np.random.rand(40,100) # random samples from a uniform distribution over [0, 1]
surface = 18 * rd # maximum value will be 18
fig = plt.figure()
ax = fig.add_subplot(111)
cores = ax.contourf(surface[:], vmin=0, vmax=40)
cbar = plt.colorbar(cores)
Run Code Online (Sandbox Code Playgroud)
我也试过这个:
cbar = plt.colorbar(cores, extend='both', extendrect=True)
cbar.set_clim(0, 40.)
Run Code Online (Sandbox Code Playgroud)
但我一直得到相同的图像,颜色条从0到20!我知道我可以使用这种set_over方法,但我不想得到一种颜色...我希望我的整个颜色范围(定义cores为0到40)出现!
谢谢你的帮助!
我需要使用生成地图cartopy并在其上绘制一些数据(使用networkx)。我能够做到,但是networkx物体在地图后面。我正在尝试强制使用图层的顺序,zorder但是...不起作用:(
我唯一的想法是为cartopy几何图形添加一些透明度,但看起来一点也不好...(在此示例中,它看起来并不那么糟糕,但是从我的整个数据来看,它看起来很糟糕)
关于如何强制执行命令的任何想法?
这是我的代码:
import cartopy.crs as ccrs
from cartopy.io import shapereader as shpreader
import matplotlib.pyplot as plt
import networkx as nx
paises = ['Portugal', 'France', 'Canada', 'Brazil', 'Kazakhstan']
cidades = ['Aveiro', 'Ust-Kamenogorsk', 'Manaus']
links = [('Aveiro', 'Ust-Kamenogorsk'),
('Manaus', 'Ust-Kamenogorsk'),
('Aveiro', 'Manaus')]
position = {'Aveiro': (-8.65, 40.6),
'Manaus': (-60.0, -3.1),
'Ust-Kamenogorsk': (82.6, 49.97)}
# map using cartopy:
shapename = 'admin_0_countries'
countries_shp = shpreader.natural_earth(resolution='110m',
category='cultural', name=shapename)
ax = plt.axes(projection=ccrs.PlateCarree(central_longitude=0.0, globe=None))
ax.set_global() …Run Code Online (Sandbox Code Playgroud)