Ejemplo n.º 1
0
def new_xls_row(ws, values):
    """Add a new row from a list of values to a worksheet."""
    global row
    col = 0
    for val in values:
        if type(val) is str or type(val) is unicode:
            XLSUtil.setCellString(ws, col, row, val)
        else:
            XLSUtil.setCellNumber(ws, col, row, val)
        col += 1
    row += 1
Ejemplo n.º 2
0
from plugins.ylemontag.histogram import Histogram

seq = Icy.getMainInterface().getFocusedSequence()

xls_out = '/tmp/icy_py_excel_test.xls'
wb = XLSUtil.createWorkbook(xls_out)     # create excel document
ws = XLSUtil.createNewPage(wb, "result")     # create new page
XLSUtil.setCellString(ws, 0, 0, "filename")  # set headers
XLSUtil.setCellString(ws, 1, 0, seq.name)

# hist = Histogram.compute(seq, 16, 0, 15)
hist = Histogram.compute(seq, 16, 7, 248)
overall = 0
for i in xrange(hist.getNbBins()):
	bin = hist.getBin(i)
	val = bin.getCentralValue()
	count = bin.getCount()
	print("%i: %i" % (val, count))
	XLSUtil.setCellNumber(ws, 0, i+3, val)
	XLSUtil.setCellNumber(ws, 1, i+3, count)
	overall += count

XLSUtil.saveAndClose(wb)  # close and save the excel file

numpixels = seq.getSizeX() * seq.getSizeY() * seq.getSizeZ()
diff = overall - numpixels
print('Number of pixels: %s x %s x %s = %s' %
	(seq.getSizeX(), seq.getSizeY(), seq.getSizeZ(), numpixels))
print('Overall count from bins: %s' % overall)
print('Difference bincount - pixels: %s' % diff)