Graph Image Generator Service Example

What's tihs?

This is an example how to use graph image generator service. The service code is still experimental!

Basic Setup


In [16]:
import requests
import pprint
from IPython.display import Image, SVG

# This is your service IP address.  You need to modify this!
BASE = 'http://52.40.167.60:5000/'

# Helper function to POST a local CX file
def post_file(url, file_name):
    with open(file_name, 'r') as f:
        return requests.post(url, data=f)

# Check server is actually working
res = requests.get(BASE)
pp = pprint.PrettyPrinter(indent=4)
pp.pprint(res.json())


{   'build': '2-19-2016',
    'description': 'Network image generator service.  This service generates '
                   'network images on the fly from any CX JSON.',
    'documents': 'https://github.com/cytoscape-ci/graph-image-generator',
    'name': 'graph-image-generator',
    'version': 'v1'}

Generate a PNG (bitmap) image from CX file


In [17]:
bitmap_image_url = BASE + 'image'
res = post_file(bitmap_image_url, './gal_filtered_2.json')
Image(data=res.content)


Out[17]:

In [12]:
# Test Bel Network
res = post_file(bitmap_image_url, 'asCX2.json')
Image(data=res.content)


---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-12-720ba85ec8e3> in <module>()
      1 # Test Bel Network
----> 2 res = post_file(bitmap_image_url, 'asCX2.json')
      3 Image(data=res.content)

<ipython-input-3-b0254107521f> in post_file(url, file_name)
      8 # Helper function to POST a local CX file
      9 def post_file(url, file_name):
---> 10     with open(file_name, 'r') as f:
     11         return requests.post(url, data=f)
     12 

FileNotFoundError: [Errno 2] No such file or directory: 'asCX2.json'

Generate SVG (vector) file from CX


In [4]:
svg_image_url = BASE + 'image/svg'
res = post_file(svg_image_url, 'gal_filtered_2.json')

# print(res.content)
SVG(data=res.content)


Out[4]:

Use Graphviz as renderer


In [5]:
svg_image_url = BASE + 'image/graphviz/svg'
res = post_file(svg_image_url, 'gal_filtered_2.json')
SVG(data=res.content)


Out[5]:
G 0--1 1--13 2--3 3--4 5--6 5--7 6--12 7--12 8--3 9--10 10--11 11--242 11--243 11--244 13--14 15--16 16--17 16--19 17--18 19--18 20--21 21--34 21--179 21--301 22--23 22--24 24--123 24--124 24--128 24--131 25--26 27--26 27--28 27--29 27--30 27--31 27--32 28--80 30--165 31--25 31--246 31--278 32--133 32--292 33--34 35--36 36--178 37--36 37--38 37--39 37--40 37--41 37--42 37--43 37--44 37--45 37--46 37--47 37--48 37--49 37--50 37--51 37--52 38--87 45--96 53--54 55--54 56--57 58--59 58--60 58--61 58--62 59--105 60--136 60--137 61--241 62--123 63--64 65--42 65--66 65--67 68--10 68--69 69--168 70--71 72--73 74--45 74--75 74--76 74--77 74--78 74--79 78--185 80--81 80--82 83--84 83--85 83--86 85--72 85--267 85--294 86--85 87--253 88--89 88--90 89--91 89--92 89--93 89--94 90--42 90--155 90--217 91--90 93--88 93--90 93--91 93--92 93--94 93--113 93--171 93--227 93--227 95--96 95--97 95--98 95--99 97--117 98--189 99--303 100--101 101--164 102--103 103--187 104--101 106--107 107--130 108--105 109--110 111--112 111--113 111--114 115--113 116--113 117--118 119--120 119--121 120--58 120--132 121--132 122--90 122--113 122--115 122--116 123--124 123--125 123--126 123--127 123--128 123--129 123--130 123--131 127--251 129--24 129--280 130--208 130--305 133--134 135--85 137--140 138--139 139--123 139--127 140--136 141--142 142--201 142--202 143--123 144--145 144--146 147--148 148--240 149--150 151--152 152--135 152--233 153--126 153--154 153--155 156--157 158--159 160--161 161--273 161--274 162--163 164--90 165--159 165--268 165--269 166--167 168--67 169--170 171--90 171--96 172--104 173--174 173--175 175--176 175--177 178--38 178--39 178--40 178--51 178--52 178--179 179--180 180--219 180--290 181--58 182--183 183--213 183--240 183--273 183--274 184--143 185--154 185--186 185--187 185--188 189--85 190--191 192--193 193--70 193--318 194--195 196--197 197--310 198--76 199--200 201--202 203--204 204--53 204--55 204--158 204--279 205--149 206--207 208--123 209--47 210--211 212--58 212--213 212--214 212--215 212--216 217--198 218--142 219--99 220--221 222--223 224--209 225--226 227--91 227--228 228--90 229--230 230--152 231--37 232--110 233--123 234--90 234--123 235--236 237--74 238--239 245--21 246--26 247--248 249--250 251--243 252--248 254--141 255--153 256--35 257--258 259--247 259--248 259--252 259--260 259--261 260--248 260--262 263--102 263--187 264--151 265--266 267--73 267--142 270--271 271--159 272--156 275--225 275--276 276--281 276--289 277--123 278--26 279--142 280--123 280--128 280--131 281--282 282--1 283--284 284--85 285--277 286--190 287--93 288--68 288--69 290--144 290--258 291--166 291--169 292--34 292--293 295--265 295--296 296--41 296--50 296--266 296--319 296--320 296--321 296--322 297--111 298--286 299--123 300--112 302--100 304--11 305--85 306--95 307--257 308--83 308--309 311--249 312--63 312--64 313--314 314--328 315--206 316--125 317--108 323--181 324--311 325--213 325--289 326--212 326--325 327--308 329--27 329--330 0 YKR026C 1 YGL122C 2 YGR218W 3 YGL097W 4 YOR204W 5 YLR249W 6 YPR080W 7 YBR118W 8 YLR293C 9 YMR146C 10 YDR429C 11 YFL017C 12 YAL003W 13 YOL123W 14 YGL044C 15 YPL211W 16 YGR014W 17 YJL030W 18 YGL229C 19 YJL013C 20 YGR203W 21 YIL061C 22 YCR084C 23 YBR112C 24 YCL067C 25 YER112W 26 YOR167C 27 YJR022W 28 YNR050C 29 YNL050C 30 YEL015W 31 YLR264W 32 YNR053C 33 YER116C 34 YDL013W 35 YNL307C 36 YAL038W 37 YNL216W 38 YCR012W 39 YGR254W 40 YHR174W 41 YIL133C 42 YLR044C 43 YOL120C 44 YNL301C 45 YCL030C 46 YDR171W 47 YBR093C 48 YER074W 49 YIL069C 50 YOL127W 51 YDR050C 52 YOL086C 53 YAL030W 54 YER143W 55 YOR327C 56 YER062C 57 YPL201C 58 YDR412W 59 YCR086W 60 YGL013C 61 YLR117C 62 YPR119W 63 YDL014W 64 YOR310C 65 YER179W 66 YLR134W 67 YIL105C 68 YOR361C 69 YMR309C 70 YOR326W 71 YGL106W 72 YMR186W 73 YBR155W 74 YEL009C 75 YMR108W 76 YOR202W 77 YBR248C 78 YOL058W 79 YMR300C 80 YMR138W 81 YHR141C 82 YLR109W 83 YCL032W 84 YDR032C 85 YLR362W 86 YDR103W 87 YJR060W 88 YBR019C 89 YOL051W 90 YGL035C 91 YBR020W 92 YLR081W 93 YPL248C 94 YBR018C 95 YIR009W 96 YKR099W 97 YIL143C 98 YDR184C 99 YNL091W 100 YNL236W 101 YKL012W 102 YML032C 103 YNL312W 104 YLR116W 105 YOR264W 106 YDR309C 107 YLR229C 108 YGR058W 109 YJR109C 110 YOR303W 111 YLR256W 112 YML054C 113 YJR048W 114 YEL039C 115 YGL237C 116 YBL021C 117 YDR311W 118 YKL028W 119 YPL149W 120 YHR171W 121 YBR217W 122 YKL109W 123 YMR043W 124 YIL015W 125 YJL159W 126 YKR097W 127 YGR108W 128 YDR461W 129 YNL145W 130 YJL157C 131 YFL026W 132 YNR007C 133 YJL203W 134 YOL136C 135 YLL021W 136 YJL219W 137 YOL156W 138 YKL101W 139 YBR160W 140 YBL005W 141 YDR323C 142 YOR036W 143 YGL008C 144 YER040W 145 YPR035W 146 YGR019W 147 YNL098C 148 YLR310C 149 YGL115W 150 YGL208W 151 YPL089C 152 YHR030C 153 YJL089W 154 YER065C 155 YLR377C 156 YMR021C 157 YLR214W 158 YDR335W 159 YDR174W 160 YLL028W 161 YGL166W 162 YDL081C 163 YLR340W 164 YKL074C 165 YML064C 166 YHR135C 167 YNL116W 168 YNL047C 169 YNL154C 170 YKL204W 171 ? 172 YJR066W 173 YDR382W 174 YDL130W 175 YFL039C 176 YCL040W 177 YHR179W 178 YPL075W 179 YNL199C 180 YPR048W 181 YLR321C 182 YBR072W 183 YGL073W 184 YBL069W 185 YNL189W 186 YDL236W 187 YPL111W 188 YPR062W 189 YLR319C 190 YNL311C 191 YKL001C 192 YOL016C 193 YBR109C 194 YJL036W 195 YDL113C 196 YEL041W 197 YHR115C 198 YNL167C 199 YDL063C 200 YPL131W 201 YGL161C 202 YDR100W 203 YMR183C 204 YGR009C 205 YMR291W 206 YGR048W 207 YPL222W 208 YAL040C 209 YFR034C 210 YFR037C 211 YOR290C 212 YER133W 213 YOR178C 214 YOR315W 215 YMR311C 216 YBR050C 217 YIL162W 218 YFL038C 219 YOR355W 220 YML074C 221 YJL190C 222 YMR058W 223 YER145C 224 YML123C 225 YPL031C 226 YHR071W 227 YML051W 228 YDR009W 229 YLL019C 230 YIL113W 231 YML024W 232 YOR039W 233 YER111C 234 YDR146C 235 YKL211C 236 YER090W 237 YDR354W 238 YNL113W 239 YPR110C 240 YER103W 241 YBR190W 242 YOL059W 243 YER102W 244 YOR362C 245 YMR044W 246 YOL149W 247 YLR191W 248 YGL153W 249 YER110C 250 YML007W 251 YBR135W 252 YNL214W 253 YPR167C 254 YOR089C 255 YNL117W 256 YLR175W 257 YDR167W 258 YLR432W 259 YDR244W 260 YDR142C 261 YDL078C 262 YIL160C 263 YAR007C 264 YKL161C 265 YLR075W 266 YPR102C 267 YPL240C 268 YHR198C 269 YLR284C 270 YER052C 271 YNL135C 272 YPR124W 273 YHR053C 274 YHR055C 275 YGL134W 276 YLR258W 277 YJL194W 278 YBL026W 279 YBL050W 280 YHR084W 281 YBR274W 282 YMR255W 283 YLR452C 284 YHR005C 285 YDR299W 286 YIL074C 287 YOR120W 288 YPR041W 289 YIL045W 290 YDL215C 291 YER079W 292 YDL030W 293 YMR005W 294 YER124C 295 YGR085C 296 YDR395W 297 YGR088W 298 YER081W 299 YPR113W 300 YIL070C 301 YLR153C 302 YGR046W 303 YNL164C 304 YDR070C 305 YOR212W 306 YNL036W 307 YML114C 308 YMR117C 309 YPR010C 310 YOR215C 311 YDL088C 312 YLR197W 313 YGL202W 314 YGR074W 315 YBR170C 316 YDL023C 317 YGR136W 318 YFR014C 319 YDL075W 320 YNL069C 321 YER056CA 322 YIL052C 323 YLR345W 324 YBL079W 325 YBR045C 326 YER054C 327 YPR145W 328 YBR043C 329 YDR277C 330 YDL194W