def __init__(self, parent=None, signalManager=None, name="Model Map"): OWNxExplorer.__init__(self, parent, signalManager, name, NetworkCanvas=OWModelMapCanvas) self.inputs = [ ("Distances", orange.SymMatrix, self.setMatrix, Default), ("Model Subset", orange.ExampleTable, self.setSubsetModels) ] self.outputs = [("Model", orange.Example), ("Classifier", orange.Classifier), ("Selected Models", orange.ExampleTable)] self.vertexSize = 32 self.autoSendSelection = False self.minVertexSize = 16 self.maxVertexSize = 16 self.lastColorAttribute = "" self.lastSizeAttribute = "" self.vizAccurancy = False self.vizAttributes = False self.radius = 100 self.attrIntersection = [] self.attrIntersectionList = [] self.attrDifference = [] self.attrDifferenceList = [] self.loadSettings() self.matrixTab = OWGUI.widgetBox(self.tabs, addToLayout=0, margin=4) self.modelTab = OWGUI.widgetBox(self.tabs, addToLayout=0, margin=4) self.tabs.insertTab(0, self.matrixTab, "Matrix") self.tabs.insertTab(1, self.modelTab, "Model Info") self.tabs.setCurrentIndex(self.tabIndex) self.networkCanvas.appendToSelection = 0 self.networkCanvas.minVertexSize = self.minVertexSize self.networkCanvas.maxVertexSize = self.maxVertexSize self.networkCanvas.invertEdgeSize = 1 # MARTIX CONTROLS self.addHistogramControls(self.matrixTab) self.kNN = 1 boxHistogram = OWGUI.widgetBox(self.matrixTab, box="Distance histogram") self.histogram = OWHist(self, boxHistogram) boxHistogram.layout().addWidget(self.histogram) # VISUALIZATION CONTROLS vizPredAcc = OWGUI.widgetBox(self.modelTab, "Prediction Accuracy", orientation="vertical") OWGUI.checkBox(vizPredAcc, self, "vizAccurancy", "Visualize prediction accurancy", callback=self.visualizeInfo) OWGUI.spin(vizPredAcc, self, "radius", 10, 300, 1, label="Radius: ", callback=self.visualizeInfo) self.predGraph = OWDistributionGraph(self, vizPredAcc) self.predGraph.setMaximumSize(QSize(300, 300)) self.predGraph.setYRlabels(None) self.predGraph.setAxisScale(QwtPlot.xBottom, 0.0, 1.0, 0.1) self.predGraph.numberOfBars = 2 self.predGraph.barSize = 200 / (self.predGraph.numberOfBars + 1) vizPredAcc.layout().addWidget(self.predGraph) vizPredAcc = OWGUI.widgetBox(self.modelTab, "Attribute lists", orientation="vertical") OWGUI.checkBox(vizPredAcc, self, "vizAttributes", "Display attribute lists", callback=self.visualizeInfo) self.attrIntersectionBox = OWGUI.listBox( vizPredAcc, self, "attrIntersection", "attrIntersectionList", "Attribute intersection", selectionMode=QListWidget.NoSelection) self.attrDifferenceBox = OWGUI.listBox( vizPredAcc, self, "attrDifference", "attrDifferenceList", "Attribute difference", selectionMode=QListWidget.NoSelection) self.attBox.hide() self.visualizeInfo() QObject.connect(self.networkCanvas, SIGNAL('selection_changed()'), self.node_selection_changed) self.matrixTab.layout().addStretch(1) self.modelTab.layout().addStretch(1)