Examples#

Example 01 - Import CSV and Format Table#

Import CSV file into TableView and format cells#
 1# Import required modules
 2import hw
 3import hw.hg as hg
 4import os
 5
 6# Link to csv from demo directory
 7ALTAIR_HOME  = os.path.abspath(os.environ['ALTAIR_HOME'])
 8tableCsvFile = os.path.join(ALTAIR_HOME,'demos','report','data','mesh_statistics.csv')
 9
10# Create new session and get window object
11ses = hw.Session()
12ses.new()
13tableWin = ses.get(hw.Window)
14
15# Switch to TableView Window
16tableWin.type = 'table'
17
18# Import csv file with ',' symbol as delimiter
19tableWin.importCSV(tableCsvFile,delimiter=',')
20
21# Autofit columns
22tableWin.setAutofitColumnWidth(['a','c:d'],True)
23
24# Format cell text and background colors dependent of filled cells
25lowRightCell=tableWin.getFilledLowerRightCell()
26uppLeftCell=tableWin.getFilledUpperLeftCell()
27tableWin.setCellBackgroundColor([uppLeftCell+':'+lowRightCell],(230,230,230))
28tableWin.setCellBackgroundColor(['a1:j1'],(0,0,0))
29tableWin.setCellTextColor('a1:j1','#ffffff')
30font=hw.Font(size=10,style='bold',family='Noto Sans')
31tableWin.setCellFont('a1:j1',font)
32tableWin.setCellAlignmentHorizontal([uppLeftCell+':'+lowRightCell],'center')
33
34# Add conditional formatting rules
35textColorList=[(0,0,0),(229,83,0),'#000000']
36bgColorList=[(0,255,0),(255,255,0),'#ff0000']
37valueList = [10,50,80]
38for (textColor,bgColor,value) in zip(textColorList,bgColorList,valueList):
39    # Add Rule
40    tableRule=hg.TableRule()
41    tableRule.textColor=textColor
42    tableRule.backgroundColor=bgColor
43    tableRule.cellList = ['b2:b13']
44    tableRule.operator='>='
45    tableRule.value = value
46# Refresh TableView to activate conditional formatting
47tableWin.refresh()
../../_images/image_TableView_import_format_table.png

Figure 6. Output of ‘Import CSV and Format Table’