python / django에서 내 웹 페이지에 대한 간단한 그래프를 만들고 싶지만 어떤 라이브러리 (및 방법)를 사용해야하는지 모르겠습니다.
나는 차트를 원하지 않고 직사각형과 같은 기본 요소에서 이미지를 만드는 방법을 찾습니다.
이러한 각 그래프는 다음 번에 값이 다를 수 있으므로 한 번만 생성되고 사용됩니다.
나는 단순히 모든 직사각형, 선 또는 텍스트의 위치를 계산할 수 있으므로 <img src = "http와 같은 img / png (또는 기타) MIME 스타일로 반환 할 pictre를 생성하기 위해 가벼운 것을 원합니다. : //my.web.www/my/page/graph "> 여기서 표시 할 매개 변수는 세션 및 데이터베이스에 의해 결정됩니다.
모든 크기를 미리 계산할 수 있으므로 다음과 같은 간단한 것을 원합니다.
img=Image(PNG,598,89) # style, x, y
img.add_text('1.3.', 10,10)
img.add_rectagle(20,10, 70,20, CYAN, BLACK)
....
return img.render()
어떻게 지시 할 수 있습니까?
미리 감사드립니다
navit 은 그것을 못 박았다 :)
# from django.utils.httpwrappers import HttpResponse
from PIL import Image, ImageDraw
import os,sys
im = Image.new('RGB',(598,89),'white')
draw = ImageDraw.Draw(im)
draw.rectangle((0,0,im.size[0]-1,im.size[1]-1), outline='blue')
draw.rectangle((25,10,590,20), fill='white', outline='black')
draw.rectangle((25,10,70,20), fill='rgb(255,0,0)', outline='black')
draw.rectangle((70,10,90,20), fill='green', outline='black')
draw.text((1,10),'1.3.',fill='black')
del draw
# write to stdout
im.save(sys.stdout, "PNG")
# draw.flush()
# response = HttpResponse(mimetype="image/png")
# image.save(response, "PNG")
# return response
Pillow를 확인해야합니다. 작동 원리는 다음과 같습니다.
from PIL import Image, ImageDraw
im = Image.open("lena.pgm")
draw = ImageDraw.Draw(im)
draw.line((0, 0) + im.size, fill=128)
draw.line((0, im.size[1], im.size[0], 0), fill=128)
del draw
# write to stdout
im.save(sys.stdout, "PNG")
Pillow에서 고객에게 파일을 제공하는 것은 간단해야합니다. 질문이 있으면 알려주세요.
편집 : 시작하기 위해이 예제를 찾았습니다 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다