如何更改SVGFIG绘图的大小
我正在使用Python的SVG封装库SVGFIG。这里有一段代码:
dots = zip(x,y)
dots = svgfig.Dots(dots,0.4,0.4)
line = svgfig.Line(0,cs[i,1],250,cs[i,1]+cs[i,0]*250,stroke_width="0.25pt")
text = svgfig.Text(200,20,'Band'+str(i+1))
sp = svgfig.Plot(0,250,0,250,dots,line,text,x=15,y=10)
默认的2D图形画布大小是400x400像素。参考页面上提到,我可以通过下面的方式来改变这个大小:
svgfig.canvas_defaults["width"] = "300px"
但是Python解释器告诉我,canvas_defaults这个属性不存在。
1 个回答
3
看起来应该是 _canvas_defaults,而不是 canvas_defaults:
>>> svgfig._canvas_defaults
{'font-family': ['Helvetica',
'Arial',
'FreeSans',
'Sans',
'sans',
'sans-serif'],
'height': '400px',
'style': {'fill': 'none',
'stroke': 'black',
'stroke-linejoin': 'round',
'stroke-width': '0.5pt',
'text-anchor': 'middle'},
'version': '1.1',
'viewBox': '0 0 100 100',
'width': '400px',
'xmlns': 'http://www.w3.org/2000/svg',
'xmlns:xlink': 'http://www.w3.org/1999/xlink'}
(我来说明一下我的思路:我下载并安装了 svgfig,然后用 ipython 的 "svgfig.canvas??" 语法查看了 svgfig.canvas 的源代码,发现有一行代码是 attributes = dict(_canvas_defaults)
。)