Code:
from abaqus import *
from abaqusConstants import *
import visualization
import xyPlotodb = session.odbs[session.odbs.keys()[0]]
# get maximum dimensions
old_vp = session.viewports[session.viewports.keys()[-1]]
old_vp.makeCurrent()
old_vp.maximize()
orig_x = old_vp.currentOrigin[0]
orig_y = old_vp.currentOrigin[1]
maxwidth = old_vp.currentWidth
maxheight = old_vp.currentHeight
mag_height = 2*maxheight/3
pha_height = maxheight/3
old_vp.restore()
#create magnitude viewport
session.Viewport(name='magview', origin=(orig_x, orig_y+pha_height), width=maxwidth, height=mag_height)
# create phase viewport
session.Viewport(name='phaseview', origin=(orig_x, orig_y), width=maxwidth, height=pha_height)
# create convenience handles
mag = session.viewports['magview']
pha = session.viewports['phaseview']
mag.makeCurrent()
#mag.setValues(applyLinkedCommands=False)
mag.odbDisplay.basicOptions.setValues(numericForm=COMPLEX_MAGNITUDE)
mag.restore()
xy1 = xyPlot.XYDataFromHistory(odb=odb, outputVariableName='Spatial displacement: U1 PI: BLECH-1 Node 11 in NSET ANREGUNG', )
c1 = session.Curve(xyData=xy1)
xyp_mag = None
if 'XYPlot_magnitude' in session.xyPlots.keys():
xyp_mag = session.xyPlots['XYPlot_magnitude']
else:
xyp_mag = session.XYPlot(name='XYPlot_magnitude')
mag_chart = xyp_mag.charts[xyp_mag.charts.keys()[0]]
mag_chart.setValues(curvesToPlot=(c1, ), )
mag.setValues(displayedObject=xyp_mag)
pha.makeCurrent()
#pha.setValues(applyLinkedCommands=False)
pha.odbDisplay.basicOptions.setValues(numericForm=COMPLEX_PHASE)
pha.restore()
xy2 = xyPlot.XYDataFromHistory(odb=odb, outputVariableName='Spatial displacement: U1 PI: BLECH-1 Node 11 in NSET ANREGUNG', )
c2 = session.Curve(xyData=xy2)
xyp_pha = None
if 'XYPlot_phase' in session.xyPlots.keys():
xyp_pha = session.xyPlots['XYPlot_phase']
else:
xyp_pha = session.XYPlot(name='XYPlot_phase')
pha_chart = xyp_pha.charts[xyp_pha.charts.keys()[0]]
pha_chart.setValues(curvesToPlot=(c2, ), )
pha.setValues(displayedObject=xyp_pha)
# formatting the magnitude plot
mag.makeCurrent()
mag.viewportAnnotationOptions.setValues(legendFont='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
mag.viewportAnnotationOptions.setValues(legendDecimalPlaces=4, legendNumberFormat=FIXED)
mag_chart.axes1[0].axisData.setValues(useSystemTitle=False, title='Frequenz [Hz]')
mag_chart.axes1[0].titleStyle.setValues(font='-*-arial-medium-r-normal-*-*-180-*-*-p-*-*-*')
mag_chart.axes1[0].labelStyle.setValues(font='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
mag_chart.axes2[0].axisData.setValues(useSystemTitle=False, title='Nachgiebigkeit [µm/N]')
mag_chart.axes2[0].titleStyle.setValues(font='-*-arial-medium-r-normal-*-*-180-*-*-p-*-*-*')
mag_chart.axes2[0].labelStyle.setValues(font='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
mag_chart.axes2[0].axisData.setValues(scale=LOG)
mag_chart.gridArea.style.setValues(fill=False)
mag_chart.legend.area.setValues(inset=True)
mag_chart.legend.textStyle.setValues(font='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
mag_chart.legend.titleStyle.setValues(font='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
mag.forceRefresh()
# formatting the phase plot
pha.makeCurrent()
pha.viewportAnnotationOptions.setValues(legendFont='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
pha.viewportAnnotationOptions.setValues(legendDecimalPlaces=4, legendNumberFormat=FIXED)
pha_chart.axes1[0].axisData.setValues(useSystemTitle=False, title='Frequenz [Hz]')
pha_chart.axes1[0].titleStyle.setValues(font='-*-arial-medium-r-normal-*-*-180-*-*-p-*-*-*')
pha_chart.axes1[0].labelStyle.setValues(font='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
pha_chart.axes2[0].axisData.setValues(useSystemTitle=False, title='Phase [°]')
pha_chart.axes2[0].labelStyle.setValues(font='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
pha_chart.axes2[0].titleStyle.setValues(font='-*-arial-medium-r-normal-*-*-180-*-*-p-*-*-*')
pha_chart.axes2[0].axisData.setValues(maxAutoCompute=False)
pha_chart.axes2[0].axisData.setValues(maxValue=0, maxAutoCompute=False)
pha_chart.axes2[0].axisData.setValues(minAutoCompute=False)
pha_chart.axes2[0].axisData.setValues(minValue=-180, minAutoCompute=False)
pha_chart.axes2[0].axisData.setValues(scale=LINEAR)
pha_chart.axes2[0].axisData.setValues(tickMode=INCREMENT)
pha_chart.axes2[0].axisData.setValues(tickIncrement=90)
pha_chart.axes2[0].axisData.setValues(labelFormat=DECIMAL)
pha_chart.axes2[0].axisData.setValues(labelNumDigits=0)
pha_chart.gridArea.style.setValues(fill=False)
pha_chart.majorAxis2GridStyle.setValues(show=True)
pha_chart.majorAxis2GridStyle.setValues(style=DOTTED)
pha_chart.majorAxis2GridStyle.setValues(thickness=0.2)
pha_chart.legend.area.setValues(inset=True)
pha_chart.legend.textStyle.setValues(font='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
pha_chart.legend.titleStyle.setValues(font='-*-arial-medium-r-normal-*-*-140-*-*-p-*-*-*')
pha.forceRefresh()
mag.restore()
pha.restore()