我想在python中绘制一个矢量,根据函数的值定义它的颜色(类似y=f(x)
)。例如,如果行具有单位长度,则在开头(x=0
)我想用蓝色填充它,并在末尾(x=1
)用红色填充它,使用函数来定义颜色调色板
我试图查看网页但没有任何结果。
任何人都可以帮助我吗?
提前致谢。
答案 0 :(得分:0)
您可能需要使用Python PIL:http://effbot.org/imagingbook/pil-index.htm
这是一个简单的示例,一旦安装了PIL,就可以帮助您入门:
import Image, ImageDraw
import math
# Create image, giving size and background color
im = Image.new("RGB", (400,400), (0, 128, 128) )
# You will do your drawing in the image through the 'draw' object
draw = ImageDraw.Draw(im)
def f(x):
return math.sin(3*x)
# One loop alongside the line
for i in xrange( 400 ):
# and another if you need a different width
for j in xrange( 196, 204 ):
# Calculate an x-value in the range 0-1. This is a hack
# you might need something more general.
x = i / 400.0
c = f(x)
# And calculate the colors from there
red = int( 256*(1.0-c) )
blue = 256 - red
im.putpixel( ( i, j ), (red, 0, blue) )
im.save("test.png", "PNG")
当然,我不建议上述方法用于任何需要性能的方法,但它可能足以让你赶时间。