예제 #1
0
def DisplaySim(worldHistory, resourcesGRMaxE, displayVisualSim=True, mapFile=None):
    if displayVisualSim:
        if mapFile is not None:
            g = Graphics(mapFile=mapFile)
        else:
            g = Graphics()
        g.DisplaySavedMap(worldHistory, resourcesGRMaxE)
        # pygame.quit()
        print 'Simulation Complete.....Analysing Data'
    popForStep = np.ndarray(len(worldHistory))
    # bioForStep = np.ndarray(len(worldHistory))
    for step in xrange(len(worldHistory)):
        popForStep[step] = totPop(step, worldHistory)
        # bioForStep[step] = biodiversity(step, worldHistory)

    POI = np.clip(np.argmax(popForStep), 10, len(worldHistory)-16)
    Analyse.plotForSteps(avgSpeed, 1, 231, len(worldHistory), "Avg Speed", 'ro-', 1, (worldHistory))
    Analyse.plotForSteps(totPop, 1, 232, len(worldHistory), "Population", 'bo-', 1, (worldHistory))
    #Analyse.plotForCreatures(speedVis, 1, 233, worldHistory[POI][0], 'Speed', 'Vis', 'Speed vs Vision in 914th step')
    Analyse.plotForSteps(avgVis, 1, 234, len(worldHistory), "Avg Vis", 'go-', 1, (worldHistory))
    Analyse.plotForSteps(totERes, 1, 235, len(worldHistory), "Resource Energy", 'yo-', 1, (worldHistory))
    Analyse.plotMeanSteps(biodiversity, 1, 236, len(worldHistory), "Biodiversity", 'bo-', 8, 5, (worldHistory))
    
    #Analyse.plotForCreatures(speedReprThreshMouth, 2, 231, worldHistory[POI-5][0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(POI-4))
    #Analyse.plotForCreatures(speedReprThreshMouth, 2, 232, worldHistory[POI][0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(POI+1))
    #Analyse.plotForCreatures(speedReprThreshMouth, 2, 233, worldHistory[POI+5][0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(POI+6))
    #Analyse.plotForCreatures(speedReprThreshMouth, 2, 234, worldHistory[POI+25][0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(POI+26))
    #Analyse.plotForCreatures(speedReprThreshMouth, 2, 235, worldHistory[POI+50][0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(POI+51))
    Analyse.plotForCreatures(speedReprThreshMouth, 2, 121, worldHistory[499][0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(500), False)
    Analyse.plotForCreatures(speedReprThreshMouth, 2, 122, worldHistory[1499][0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(1500), False)
    
    #Analyse.plotForCreatures(speedReprThreshMouth, 3, 111, worldHistory[POI][0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(POI), True)
    #Analyse.findSpecies(worldHistory[POI+599][0], True)

    plt.show()
예제 #2
0
def DisplayFrame(worldFrame, resourcesGRMaxE, mapFile, frameNo):
    creatSpec = Analyse.findSpecies(worldFrame[0])
    if np.max(creatSpec[:,1])==0:
        colours = np.array(creatSpec[:,1])
    else:
        colours = (np.array(creatSpec[:,1]))/float(np.max(creatSpec[:,1]))
    Analyse.plotForCreatures(speedReprThreshMouth, 1, 111, worldFrame[0], 'Speed', 'Repr Thresh', 'Mouth Size', 'Genetics Plot in %dth step'%(frameNo+1))

    plt.show()

    if mapFile is not None:
        Graphics(mapFile=mapFile).DisplaySavedMapFrame(worldFrame, resourcesGRMaxE, frameNo, colours, creatSpec)
    else:
        Graphics().DisplaySavedMapFrame(worldFrame, resourcesGRMaxE, frameNo, colours, creatSpec)