pycairoで長方形を出力しようとしています。
長方形の横の長さのサイズをa=41.2016999722にしたのですが、float型なので怒られました。
そのため、a*10^10して整数にしましたが、同じ理由で怒られました。コードは以下の通りです。
python
1import cairo 2import math 3import sys, csv, operator 4import pandas as pd 5import numpy as np 6np.set_printoptions(formatter={'float': '{:.5f}'.format}) 7pd.options.display.float_format = '{:.5f}'.format 8 9df = pd.read_csv('analyze2_new48.csv', sep=",",header=None) 10 11s = "{:.5f}".format(df.iloc[6,2]) 12s1 = float(s) 13f = "{:.5f}".format(df.iloc[1337,2]) 14f1 = float(f) 15a=f1-s1 16print(a) 17 18 19surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, a,640) 20ctx = cairo.Context(surface) 21ctx.translate(10,0) 22 23ctx.rectangle(0, 0, 50, 50) 24ctx.set_source_rgb(0xbb/float(0xff), 0xdd/float(0xff), 0xff/float(0xff)) 25ctx.fill() 26surface.write_to_png('sample999a.png') 27
実行結果は以下のようになりました。
41.2016999722 Traceback (most recent call last): File "draw.py", line 19, in <module> surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, a,640) TypeError: integer argument expected, got float
できれば長方形のサイズを小数点でも指定できるようにしたいのですが対処法はありますでしょうか?
よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。