# Active image of UV/Image Editor

After creating an image using:

bpy.data.images.new(name="NewImage2", width=512, height=512)


How would I set that image to the active image within the UV/Image Editor in Python?

You loop through area till you find the UV/Image editor and set the active image to you image

for area in bpy.context.screen.areas :
if area.type == 'IMAGE_EDITOR' :
area.spaces.active.image = my_img

• Is there a way to do this if that space isn't open? Jul 6 '16 at 7:10
• @user53145 try changing spaces.active to something like spaces["myspace"] Jul 6 '16 at 18:08

Here's the correct way to do it. This will work even if the UV Editor pane isn't open:

bpy.ops.image.new(name='Some Name')
image = bpy.data.images['Some Name']

bpy.data.screens['UV Editing'].areas[1].spaces[0].image = image

• This would only work if you don't change your Blender screen layout at all. @Chebhou's answer is more robust. Jul 22 '16 at 13:48