Image 通过shell叠加图像

Image 通过shell叠加图像,image,bash,matplotlib,Image,Bash,Matplotlib,我有两个数字,一个是通过一些计算得出的数据图,用matplotlib绘制,另一个是从google maps获取的世界地图。我想将matplotlib图减少到某个百分比值,并将其叠加在地图图片的某个位置,得到最终的“混合”图片。我知道这可以通过图形问题来实现,但我想在数千种不同的情况下在shell上自动实现,我想知道您是否可以为此提出一些方法/想法。这听起来很适合,尤其是开关。这听起来很适合,尤其是开关。ImageMagick可以完成这项工作,正是composite命令。有关用法,请检查此url中

我有两个数字,一个是通过一些计算得出的数据图,用matplotlib绘制,另一个是从google maps获取的世界地图。我想将matplotlib图减少到某个百分比值,并将其叠加在地图图片的某个位置,得到最终的“混合”图片。我知道这可以通过图形问题来实现,但我想在数千种不同的情况下在shell上自动实现,我想知道您是否可以为此提出一些方法/想法。

这听起来很适合,尤其是开关。

这听起来很适合,尤其是开关。

ImageMagick可以完成这项工作,正是
composite
命令。有关用法,请检查此url中的示例:

ImageMagick可以完成此任务,确切地说是
composite
命令。有关用法,请检查此url以获取示例:

以防在打印数据时直接使用matplotlib执行此操作(否则imagemagick很好):


以防在绘制数据时直接使用matplotlib(否则imagemagick很好):

import Image
import matplotlib.pyplot as plt
import numpy as np

dpi = 100.0

im = Image.open('Dymaxion_map_unfolded.png')
width, height = im.size
fig = plt.figure(figsize=(width / dpi, height / dpi))
fig.figimage(np.array(im) / 255.0)

# Make an axis in the upper left corner that takes up 20% of the height and 30%
# of the width of the figure
ax = fig.add_axes([0, 0.7, 0.2, 0.3])
ax.plot(range(10))

plt.show()