10
10
display_as: chart_type
11
11
has_thumbnail: true
12
12
page_type: example_index
13
- order: 31
13
+ order: 32
14
14
---
15
15
{% raw %}
16
16
< div class ="cell border-box-sizing text_cell rendered ">
@@ -542,7 +542,7 @@ <h4 id="Tables-with-Graphs">Tables with Graphs<a class="anchor-link" href="#Tabl
542
542
</ div >
543
543
< div class ="cell border-box-sizing code_cell rendered ">
544
544
< div class ="input ">
545
- < div class ="prompt input_prompt "> In [11 ]:</ div >
545
+ < div class ="prompt input_prompt "> In [1 ]:</ div >
546
546
< div class ="inner_cell ">
547
547
< div class ="input_area ">
548
548
< div class =" highlight hl-ipython2 "> < pre > < span class ="kn "> import</ span > < span class ="nn "> plotly.plotly</ span > < span class ="kn "> as</ span > < span class ="nn "> py</ span >
@@ -601,7 +601,7 @@ <h4 id="Tables-with-Graphs">Tables with Graphs<a class="anchor-link" href="#Tabl
601
601
< div class ="output ">
602
602
603
603
604
- < div class ="output_area "> < div class ="prompt output_prompt "> Out[11 ]:</ div >
604
+ < div class ="output_area "> < div class ="prompt output_prompt "> Out[1 ]:</ div >
605
605
606
606
< div class ="output_html rendered_html output_subarea output_execute_result ">
607
607
< iframe id ="igraph " scrolling ="no " style ="border:none; "seamless ="seamless " src ="https://plot.ly/~chelsea_lyn/9584.embed " height ="530px " width ="100% "> </ iframe >
@@ -619,6 +619,91 @@ <h4 id="Tables-with-Graphs">Tables with Graphs<a class="anchor-link" href="#Tabl
619
619
< div class ="inner_cell ">
620
620
< div class ="text_cell_render border-box-sizing rendered_html ">
621
621
622
+ </ div >
623
+ </ div >
624
+ </ div >
625
+ < div class ="cell border-box-sizing code_cell rendered ">
626
+ < div class ="input ">
627
+ < div class ="prompt input_prompt "> In [19]:</ div >
628
+ < div class ="inner_cell ">
629
+ < div class ="input_area ">
630
+ < div class =" highlight hl-ipython2 "> < pre > < span class ="kn "> import</ span > < span class ="nn "> plotly.plotly</ span > < span class ="kn "> as</ span > < span class ="nn "> py</ span >
631
+ < span class ="kn "> import</ span > < span class ="nn "> plotly.graph_objs</ span > < span class ="kn "> as</ span > < span class ="nn "> go</ span >
632
+ < span class ="kn "> from</ span > < span class ="nn "> plotly.tools</ span > < span class ="kn "> import</ span > < span class ="n "> FigureFactory</ span > < span class ="k "> as</ span > < span class ="n "> FF</ span >
633
+
634
+ < span class ="c "> # Add table data</ span >
635
+ < span class ="n "> table_data</ span > < span class ="o "> =</ span > < span class ="p "> [[</ span > < span class ="s "> 'Team'</ span > < span class ="p "> ,</ span > < span class ="s "> 'Wins'</ span > < span class ="p "> ,</ span > < span class ="s "> 'Losses'</ span > < span class ="p "> ,</ span > < span class ="s "> 'Ties'</ span > < span class ="p "> ],</ span >
636
+ < span class ="p "> [</ span > < span class ="s "> 'Montréal<br>Canadiens'</ span > < span class ="p "> ,</ span > < span class ="mi "> 18</ span > < span class ="p "> ,</ span > < span class ="mi "> 4</ span > < span class ="p "> ,</ span > < span class ="mi "> 0</ span > < span class ="p "> ],</ span >
637
+ < span class ="p "> [</ span > < span class ="s "> 'Dallas Stars'</ span > < span class ="p "> ,</ span > < span class ="mi "> 18</ span > < span class ="p "> ,</ span > < span class ="mi "> 5</ span > < span class ="p "> ,</ span > < span class ="mi "> 0</ span > < span class ="p "> ],</ span >
638
+ < span class ="p "> [</ span > < span class ="s "> 'NY Rangers'</ span > < span class ="p "> ,</ span > < span class ="mi "> 16</ span > < span class ="p "> ,</ span > < span class ="mi "> 5</ span > < span class ="p "> ,</ span > < span class ="mi "> 0</ span > < span class ="p "> ],</ span >
639
+ < span class ="p "> [</ span > < span class ="s "> 'Boston<br>Bruins'</ span > < span class ="p "> ,</ span > < span class ="mi "> 13</ span > < span class ="p "> ,</ span > < span class ="mi "> 8</ span > < span class ="p "> ,</ span > < span class ="mi "> 0</ span > < span class ="p "> ],</ span >
640
+ < span class ="p "> [</ span > < span class ="s "> 'Chicago<br>Blackhawks'</ span > < span class ="p "> ,</ span > < span class ="mi "> 13</ span > < span class ="p "> ,</ span > < span class ="mi "> 8</ span > < span class ="p "> ,</ span > < span class ="mi "> 0</ span > < span class ="p "> ],</ span >
641
+ < span class ="p "> [</ span > < span class ="s "> 'Ottawa<br>Senators'</ span > < span class ="p "> ,</ span > < span class ="mi "> 12</ span > < span class ="p "> ,</ span > < span class ="mi "> 5</ span > < span class ="p "> ,</ span > < span class ="mi "> 0</ span > < span class ="p "> ]]</ span >
642
+ < span class ="c "> # Initialize a figure with FF.create_table(table_data)</ span >
643
+ < span class ="n "> figure</ span > < span class ="o "> =</ span > < span class ="n "> FF</ span > < span class ="o "> .</ span > < span class ="n "> create_table</ span > < span class ="p "> (</ span > < span class ="n "> table_data</ span > < span class ="p "> ,</ span > < span class ="n "> height_constant</ span > < span class ="o "> =</ span > < span class ="mi "> 60</ span > < span class ="p "> )</ span >
644
+
645
+ < span class ="c "> # Add graph data</ span >
646
+ < span class ="n "> teams</ span > < span class ="o "> =</ span > < span class ="p "> [</ span > < span class ="s "> 'Montréal Canadiens'</ span > < span class ="p "> ,</ span > < span class ="s "> 'Dallas Stars'</ span > < span class ="p "> ,</ span > < span class ="s "> 'NY Rangers'</ span > < span class ="p "> ,</ span >
647
+ < span class ="s "> 'Boston Bruins'</ span > < span class ="p "> ,</ span > < span class ="s "> 'Chicago Blackhawks'</ span > < span class ="p "> ,</ span > < span class ="s "> 'Ottawa Senators'</ span > < span class ="p "> ]</ span >
648
+ < span class ="n "> GFPG</ span > < span class ="o "> =</ span > < span class ="p "> [</ span > < span class ="mf "> 3.54</ span > < span class ="p "> ,</ span > < span class ="mf "> 3.48</ span > < span class ="p "> ,</ span > < span class ="mf "> 3.0</ span > < span class ="p "> ,</ span > < span class ="mf "> 3.27</ span > < span class ="p "> ,</ span > < span class ="mf "> 2.83</ span > < span class ="p "> ,</ span > < span class ="mf "> 2.45</ span > < span class ="p "> ,</ span > < span class ="mf "> 3.18</ span > < span class ="p "> ]</ span >
649
+ < span class ="n "> GAPG</ span > < span class ="o "> =</ span > < span class ="p "> [</ span > < span class ="mf "> 2.17</ span > < span class ="p "> ,</ span > < span class ="mf "> 2.57</ span > < span class ="p "> ,</ span > < span class ="mf "> 2.0</ span > < span class ="p "> ,</ span > < span class ="mf "> 2.91</ span > < span class ="p "> ,</ span > < span class ="mf "> 2.57</ span > < span class ="p "> ,</ span > < span class ="mf "> 2.14</ span > < span class ="p "> ,</ span > < span class ="mf "> 2.77</ span > < span class ="p "> ]</ span >
650
+ < span class ="c "> # Make traces for graph</ span >
651
+ < span class ="n "> trace1</ span > < span class ="o "> =</ span > < span class ="n "> go</ span > < span class ="o "> .</ span > < span class ="n "> Scatter</ span > < span class ="p "> (</ span > < span class ="n "> x</ span > < span class ="o "> =</ span > < span class ="n "> teams</ span > < span class ="p "> ,</ span > < span class ="n "> y</ span > < span class ="o "> =</ span > < span class ="n "> GFPG</ span > < span class ="p "> ,</ span > < span class ="nb "> type</ span > < span class ="o "> =</ span > < span class ="s "> 'bar'</ span > < span class ="p "> ,</ span >
652
+ < span class ="n "> marker</ span > < span class ="o "> =</ span > < span class ="nb "> dict</ span > < span class ="p "> (</ span > < span class ="n "> color</ span > < span class ="o "> =</ span > < span class ="s "> '#0099ff'</ span > < span class ="p "> ),</ span >
653
+ < span class ="n "> name</ span > < span class ="o "> =</ span > < span class ="s "> 'Goals For<br>Per Game'</ span > < span class ="p "> ,</ span >
654
+ < span class ="n "> xaxis</ span > < span class ="o "> =</ span > < span class ="s "> 'x2'</ span > < span class ="p "> ,</ span > < span class ="n "> yaxis</ span > < span class ="o "> =</ span > < span class ="s "> 'y2'</ span > < span class ="p "> )</ span >
655
+ < span class ="n "> trace2</ span > < span class ="o "> =</ span > < span class ="n "> go</ span > < span class ="o "> .</ span > < span class ="n "> Scatter</ span > < span class ="p "> (</ span > < span class ="n "> x</ span > < span class ="o "> =</ span > < span class ="n "> teams</ span > < span class ="p "> ,</ span > < span class ="n "> y</ span > < span class ="o "> =</ span > < span class ="n "> GAPG</ span > < span class ="p "> ,</ span > < span class ="nb "> type</ span > < span class ="o "> =</ span > < span class ="s "> 'bar'</ span > < span class ="p "> ,</ span >
656
+ < span class ="n "> marker</ span > < span class ="o "> =</ span > < span class ="nb "> dict</ span > < span class ="p "> (</ span > < span class ="n "> color</ span > < span class ="o "> =</ span > < span class ="s "> '#404040'</ span > < span class ="p "> ),</ span >
657
+ < span class ="n "> name</ span > < span class ="o "> =</ span > < span class ="s "> 'Goals Against<br>Per Game'</ span > < span class ="p "> ,</ span >
658
+ < span class ="n "> xaxis</ span > < span class ="o "> =</ span > < span class ="s "> 'x2'</ span > < span class ="p "> ,</ span > < span class ="n "> yaxis</ span > < span class ="o "> =</ span > < span class ="s "> 'y2'</ span > < span class ="p "> )</ span >
659
+
660
+ < span class ="c "> # Add trace data to figure</ span >
661
+ < span class ="n "> figure</ span > < span class ="p "> [</ span > < span class ="s "> 'data'</ span > < span class ="p "> ]</ span > < span class ="o "> .</ span > < span class ="n "> extend</ span > < span class ="p "> (</ span > < span class ="n "> go</ span > < span class ="o "> .</ span > < span class ="n "> Data</ span > < span class ="p "> ([</ span > < span class ="n "> trace1</ span > < span class ="p "> ,</ span > < span class ="n "> trace2</ span > < span class ="p "> ]))</ span >
662
+
663
+ < span class ="c "> # Edit layout for subplots</ span >
664
+ < span class ="n "> figure</ span > < span class ="o "> .</ span > < span class ="n "> layout</ span > < span class ="o "> .</ span > < span class ="n "> yaxis</ span > < span class ="o "> .</ span > < span class ="n "> update</ span > < span class ="p "> ({</ span > < span class ="s "> 'domain'</ span > < span class ="p "> :</ span > < span class ="p "> [</ span > < span class ="mi "> 0</ span > < span class ="p "> ,</ span > < span class ="o "> .</ span > < span class ="mi "> 45</ span > < span class ="p "> ]})</ span >
665
+ < span class ="n "> figure</ span > < span class ="o "> .</ span > < span class ="n "> layout</ span > < span class ="o "> .</ span > < span class ="n "> yaxis2</ span > < span class ="o "> .</ span > < span class ="n "> update</ span > < span class ="p "> ({</ span > < span class ="s "> 'domain'</ span > < span class ="p "> :</ span > < span class ="p "> [</ span > < span class ="o "> .</ span > < span class ="mi "> 6</ span > < span class ="p "> ,</ span > < span class ="mi "> 1</ span > < span class ="p "> ]})</ span >
666
+ < span class ="c "> # The graph's yaxis2 MUST BE anchored to the graph's xaxis2 and vice versa</ span >
667
+ < span class ="n "> figure</ span > < span class ="o "> .</ span > < span class ="n "> layout</ span > < span class ="o "> .</ span > < span class ="n "> yaxis2</ span > < span class ="o "> .</ span > < span class ="n "> update</ span > < span class ="p "> ({</ span > < span class ="s "> 'anchor'</ span > < span class ="p "> :</ span > < span class ="s "> 'x2'</ span > < span class ="p "> })</ span >
668
+ < span class ="n "> figure</ span > < span class ="o "> .</ span > < span class ="n "> layout</ span > < span class ="o "> .</ span > < span class ="n "> xaxis2</ span > < span class ="o "> .</ span > < span class ="n "> update</ span > < span class ="p "> ({</ span > < span class ="s "> 'anchor'</ span > < span class ="p "> :</ span > < span class ="s "> 'y2'</ span > < span class ="p "> })</ span >
669
+ < span class ="n "> figure</ span > < span class ="o "> .</ span > < span class ="n "> layout</ span > < span class ="o "> .</ span > < span class ="n "> yaxis2</ span > < span class ="o "> .</ span > < span class ="n "> update</ span > < span class ="p "> ({</ span > < span class ="s "> 'title'</ span > < span class ="p "> :</ span > < span class ="s "> 'Goals'</ span > < span class ="p "> })</ span >
670
+ < span class ="c "> # Update the margins to add a title and see graph x-labels. </ span >
671
+ < span class ="n "> figure</ span > < span class ="o "> .</ span > < span class ="n "> layout</ span > < span class ="o "> .</ span > < span class ="n "> margin</ span > < span class ="o "> .</ span > < span class ="n "> update</ span > < span class ="p "> ({</ span > < span class ="s "> 't'</ span > < span class ="p "> :</ span > < span class ="mi "> 75</ span > < span class ="p "> ,</ span > < span class ="s "> 'l'</ span > < span class ="p "> :</ span > < span class ="mi "> 50</ span > < span class ="p "> })</ span >
672
+ < span class ="n "> figure</ span > < span class ="o "> .</ span > < span class ="n "> layout</ span > < span class ="o "> .</ span > < span class ="n "> update</ span > < span class ="p "> ({</ span > < span class ="s "> 'title'</ span > < span class ="p "> :</ span > < span class ="s "> '2016 Hockey Stats'</ span > < span class ="p "> })</ span >
673
+ < span class ="c "> # Update the height because adding a graph vertically will interact with</ span >
674
+ < span class ="c "> # the plot height calculated for the table</ span >
675
+ < span class ="n "> figure</ span > < span class ="o "> .</ span > < span class ="n "> layout</ span > < span class ="o "> .</ span > < span class ="n "> update</ span > < span class ="p "> ({</ span > < span class ="s "> 'height'</ span > < span class ="p "> :</ span > < span class ="mi "> 800</ span > < span class ="p "> })</ span >
676
+
677
+ < span class ="c "> # Plot!</ span >
678
+ < span class ="n "> py</ span > < span class ="o "> .</ span > < span class ="n "> iplot</ span > < span class ="p "> (</ span > < span class ="n "> figure</ span > < span class ="p "> ,</ span > < span class ="n "> filename</ span > < span class ="o "> =</ span > < span class ="s "> 'subplot_table'</ span > < span class ="p "> )</ span >
679
+ </ pre > </ div >
680
+
681
+ </ div >
682
+ </ div >
683
+ </ div >
684
+
685
+ < div class ="output_wrapper ">
686
+ < div class ="output ">
687
+
688
+
689
+ < div class ="output_area "> < div class ="prompt output_prompt "> Out[19]:</ div >
690
+
691
+ < div class ="output_html rendered_html output_subarea output_execute_result ">
692
+ < iframe id ="igraph " scrolling ="no " style ="border:none; "seamless ="seamless " src ="https://plot.ly/~chelsea_lyn/9584.embed " height ="800px " width ="100% "> </ iframe >
693
+ </ div >
694
+
695
+ </ div >
696
+
697
+ </ div >
698
+ </ div >
699
+
700
+ </ div >
701
+ < div class ="cell border-box-sizing text_cell rendered ">
702
+ < div class ="prompt input_prompt ">
703
+ </ div >
704
+ < div class ="inner_cell ">
705
+ < div class ="text_cell_render border-box-sizing rendered_html ">
706
+
622
707
</ div >
623
708
</ div >
624
709
</ div >
0 commit comments