Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit a0a114d

Browse files
committed
Updated ternary-contour-scatter plot
1 parent 2d0e62a commit a0a114d

File tree

2 files changed

+98
-105
lines changed

2 files changed

+98
-105
lines changed

_posts/python/ternary-scatter-contour/2015-06-30-ternary-scatter-contour.html

Lines changed: 50 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
permalink: python/ternary-scatter-contour
2+
permalink: python/ternary-scatter-contour/
33
description: How to make A scatter plot overlaid on ternary contour in Python with Plotly.
44
title: Python Ternary Scatter Overlaid on Contour | plotly
55
has_thumbnail: true
@@ -56,7 +56,8 @@ <h3 id="Importing-required-Libraries:">Importing required Libraries:<a class="an
5656

5757
<div class="output_area"><div class="prompt"></div>
5858
<div class="output_subarea output_stream output_stdout output_text">
59-
<pre>contour_data.json scatter_data.json ternary-scatter.ipynb
59+
<pre>2015-06-30-ternary-scatter-contour.html scatter_data.json
60+
contour_data.json ternary-scatter-contour.ipynb
6061
</pre>
6162
</div>
6263
</div>
@@ -113,7 +114,7 @@ <h3 id="Loading-Data-Files-into-Python-object:">Loading Data Files into Python o
113114
</div>
114115
<div class="cell border-box-sizing code_cell rendered">
115116
<div class="input">
116-
<div class="prompt input_prompt">In&nbsp;[6]:</div>
117+
<div class="prompt input_prompt">In&nbsp;[5]:</div>
117118
<div class="inner_cell">
118119
<div class="input_area">
119120
<div class=" highlight hl-ipython2"><pre><span class="k">def</span> <span class="nf">clean_data</span><span class="p">(</span><span class="n">data_in</span><span class="p">):</span>
@@ -167,7 +168,7 @@ <h3 id="Plotting-Ternary-Scatter-Plot:">Plotting Ternary Scatter Plot:<a class="
167168
</div>
168169
<div class="cell border-box-sizing code_cell rendered">
169170
<div class="input">
170-
<div class="prompt input_prompt">In&nbsp;[7]:</div>
171+
<div class="prompt input_prompt">In&nbsp;[6]:</div>
171172
<div class="inner_cell">
172173
<div class="input_area">
173174
<div class=" highlight hl-ipython2"><pre><span class="c"># Defining Empty lists for holding clean data</span>
@@ -192,7 +193,7 @@ <h3 id="Plotting-Ternary-Scatter-Plot:">Plotting Ternary Scatter Plot:<a class="
192193
<span class="n">marker</span><span class="o">=</span><span class="p">{</span>
193194
<span class="s">&#39;symbol&#39;</span><span class="p">:</span> <span class="mi">100</span><span class="p">,</span>
194195
<span class="s">&#39;color&#39;</span><span class="p">:</span> <span class="s">&#39;green&#39;</span><span class="p">,</span>
195-
<span class="s">&#39;size&#39;</span><span class="p">:</span> <span class="mi">14</span>
196+
<span class="s">&#39;size&#39;</span><span class="p">:</span> <span class="mi">10</span>
196197
<span class="p">},</span>
197198
<span class="p">)</span>
198199
</pre></div>
@@ -204,7 +205,7 @@ <h3 id="Plotting-Ternary-Scatter-Plot:">Plotting Ternary Scatter Plot:<a class="
204205
</div>
205206
<div class="cell border-box-sizing code_cell rendered">
206207
<div class="input">
207-
<div class="prompt input_prompt">In&nbsp;[8]:</div>
208+
<div class="prompt input_prompt">In&nbsp;[7]:</div>
208209
<div class="inner_cell">
209210
<div class="input_area">
210211
<div class=" highlight hl-ipython2"><pre><span class="n">layout</span> <span class="o">=</span> <span class="p">{</span>
@@ -227,7 +228,7 @@ <h3 id="Plotting-Ternary-Scatter-Plot:">Plotting Ternary Scatter Plot:<a class="
227228
</div>
228229
<div class="cell border-box-sizing code_cell rendered">
229230
<div class="input">
230-
<div class="prompt input_prompt">In&nbsp;[9]:</div>
231+
<div class="prompt input_prompt">In&nbsp;[8]:</div>
231232
<div class="inner_cell">
232233
<div class="input_area">
233234
<div class=" highlight hl-ipython2"><pre><span class="n">figure</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="n">data</span><span class="o">=</span><span class="p">[</span><span class="n">trace1</span><span class="p">],</span> <span class="n">layout</span><span class="o">=</span><span class="n">layout</span><span class="p">)</span>
@@ -240,7 +241,7 @@ <h3 id="Plotting-Ternary-Scatter-Plot:">Plotting Ternary Scatter Plot:<a class="
240241
</div>
241242
<div class="cell border-box-sizing code_cell rendered">
242243
<div class="input">
243-
<div class="prompt input_prompt">In&nbsp;[10]:</div>
244+
<div class="prompt input_prompt">In&nbsp;[9]:</div>
244245
<div class="inner_cell">
245246
<div class="input_area">
246247
<div class=" highlight hl-ipython2"><pre><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>
@@ -254,10 +255,10 @@ <h3 id="Plotting-Ternary-Scatter-Plot:">Plotting Ternary Scatter Plot:<a class="
254255
<div class="output">
255256

256257

257-
<div class="output_area"><div class="prompt output_prompt">Out[10]:</div>
258+
<div class="output_area"><div class="prompt output_prompt">Out[9]:</div>
258259

259260
<div class="output_html rendered_html output_subarea output_execute_result">
260-
<iframe id="igraph" scrolling="no" style="border:none;" seamless="seamless" src="https://plot.ly/~tarzzz/2271.embed" height="525px" width="100%"></iframe>
261+
<iframe id="igraph" scrolling="no" style="border:none;" seamless="seamless" src="https://plot.ly/~tarzzz/2300.embed" height="525px" width="100%"></iframe>
261262
</div>
262263

263264
</div>
@@ -278,7 +279,7 @@ <h2 id="Ternary-Contour-Plot:">Ternary Contour Plot:<a class="anchor-link" href=
278279
</div>
279280
<div class="cell border-box-sizing code_cell rendered">
280281
<div class="input">
281-
<div class="prompt input_prompt">In&nbsp;[11]:</div>
282+
<div class="prompt input_prompt">In&nbsp;[10]:</div>
282283
<div class="inner_cell">
283284
<div class="input_area">
284285
<div class=" highlight hl-ipython2"><pre><span class="n">contour_dict</span> <span class="o">=</span> <span class="n">contour_raw_data</span><span class="p">[</span><span class="s">&#39;Data&#39;</span><span class="p">]</span>
@@ -291,7 +292,7 @@ <h2 id="Ternary-Contour-Plot:">Ternary Contour Plot:<a class="anchor-link" href=
291292
</div>
292293
<div class="cell border-box-sizing code_cell rendered">
293294
<div class="input">
294-
<div class="prompt input_prompt">In&nbsp;[12]:</div>
295+
<div class="prompt input_prompt">In&nbsp;[11]:</div>
295296
<div class="inner_cell">
296297
<div class="input_area">
297298
<div class=" highlight hl-ipython2"><pre><span class="c"># Defining a colormap:</span>
@@ -309,20 +310,27 @@ <h2 id="Ternary-Contour-Plot:">Ternary Contour Plot:<a class="anchor-link" href=
309310
</div>
310311
<div class="cell border-box-sizing code_cell rendered">
311312
<div class="input">
312-
<div class="prompt input_prompt">In&nbsp;[13]:</div>
313+
<div class="prompt input_prompt">In&nbsp;[12]:</div>
313314
<div class="inner_cell">
314315
<div class="input_area">
315316
<div class=" highlight hl-ipython2"><pre><span class="n">traces</span> <span class="o">=</span> <span class="p">[]</span>
316317

317318
<span class="k">for</span> <span class="n">raw_data</span> <span class="ow">in</span> <span class="n">contour_dict</span><span class="p">:</span>
318319
<span class="n">data</span> <span class="o">=</span> <span class="n">clean_data</span><span class="p">(</span><span class="n">raw_data</span><span class="p">)</span>
320+
321+
<span class="n">a</span> <span class="o">=</span> <span class="p">[</span><span class="n">inner_data</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="k">for</span> <span class="n">inner_data</span> <span class="ow">in</span> <span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">:]]</span>
322+
<span class="n">a</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">0</span><span class="p">])</span> <span class="c"># Closing the loop </span>
323+
324+
<span class="n">b</span> <span class="o">=</span> <span class="p">[</span><span class="n">inner_data</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="k">for</span> <span class="n">inner_data</span> <span class="ow">in</span> <span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">:]]</span>
325+
<span class="n">b</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">1</span><span class="p">])</span> <span class="c"># Closing the loop </span>
326+
327+
<span class="n">c</span> <span class="o">=</span> <span class="p">[</span><span class="n">inner_data</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="k">for</span> <span class="n">inner_data</span> <span class="ow">in</span> <span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">:]]</span>
328+
<span class="n">c</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">2</span><span class="p">])</span> <span class="c"># Closing the loop </span>
329+
319330
<span class="n">trace</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span>
320331
<span class="nb">type</span><span class="o">=</span><span class="s">&#39;scatterternary&#39;</span><span class="p">,</span><span class="n">text</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
321-
<span class="n">a</span><span class="o">=</span><span class="p">[</span><span class="n">inner_data</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="k">for</span> <span class="n">inner_data</span> <span class="ow">in</span> <span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">:]],</span>
322-
<span class="n">b</span><span class="o">=</span><span class="p">[</span><span class="n">inner_data</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="k">for</span> <span class="n">inner_data</span> <span class="ow">in</span> <span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">:]],</span>
323-
<span class="n">c</span><span class="o">=</span><span class="p">[</span><span class="n">inner_data</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="k">for</span> <span class="n">inner_data</span> <span class="ow">in</span> <span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">:]],</span>
324-
<span class="n">mode</span><span class="o">=</span><span class="s">&#39;lines&#39;</span><span class="p">,</span>
325-
<span class="n">line</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">&#39;#444&#39;</span><span class="p">),</span>
332+
<span class="n">a</span><span class="o">=</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="o">=</span><span class="n">b</span><span class="p">,</span> <span class="n">c</span><span class="o">=</span><span class="n">c</span><span class="p">,</span> <span class="n">mode</span><span class="o">=</span><span class="s">&#39;lines&#39;</span><span class="p">,</span>
333+
<span class="n">line</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">&#39;#444&#39;</span><span class="p">,</span> <span class="n">shape</span><span class="o">=</span><span class="s">&#39;spline&#39;</span><span class="p">),</span>
326334
<span class="n">fill</span><span class="o">=</span><span class="s">&#39;toself&#39;</span><span class="p">,</span>
327335
<span class="n">fillcolor</span> <span class="o">=</span> <span class="n">colors_iterator</span><span class="o">.</span><span class="n">next</span><span class="p">()</span>
328336
<span class="p">)</span>
@@ -336,7 +344,7 @@ <h2 id="Ternary-Contour-Plot:">Ternary Contour Plot:<a class="anchor-link" href=
336344
</div>
337345
<div class="cell border-box-sizing code_cell rendered">
338346
<div class="input">
339-
<div class="prompt input_prompt">In&nbsp;[16]:</div>
347+
<div class="prompt input_prompt">In&nbsp;[13]:</div>
340348
<div class="inner_cell">
341349
<div class="input_area">
342350
<div class=" highlight hl-ipython2"><pre><span class="n">layout</span><span class="p">[</span><span class="s">&#39;title&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="s">&#39;Ternary Contour Plot&#39;</span>
@@ -350,7 +358,7 @@ <h2 id="Ternary-Contour-Plot:">Ternary Contour Plot:<a class="anchor-link" href=
350358
</div>
351359
<div class="cell border-box-sizing code_cell rendered">
352360
<div class="input">
353-
<div class="prompt input_prompt">In&nbsp;[17]:</div>
361+
<div class="prompt input_prompt">In&nbsp;[14]:</div>
354362
<div class="inner_cell">
355363
<div class="input_area">
356364
<div class=" highlight hl-ipython2"><pre><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>
@@ -364,10 +372,10 @@ <h2 id="Ternary-Contour-Plot:">Ternary Contour Plot:<a class="anchor-link" href=
364372
<div class="output">
365373

366374

367-
<div class="output_area"><div class="prompt output_prompt">Out[17]:</div>
375+
<div class="output_area"><div class="prompt output_prompt">Out[14]:</div>
368376

369377
<div class="output_html rendered_html output_subarea output_execute_result">
370-
<iframe id="igraph" scrolling="no" style="border:none;" seamless="seamless" src="https://plot.ly/~tarzzz/2274.embed" height="525px" width="100%"></iframe>
378+
<iframe id="igraph" scrolling="no" style="border:none;" seamless="seamless" src="https://plot.ly/~tarzzz/2302.embed" height="525px" width="100%"></iframe>
371379
</div>
372380

373381
</div>
@@ -388,10 +396,10 @@ <h3 id="Scatter-Plot-Overlaid-on-Contour-Plot:">Scatter Plot Overlaid on Contour
388396
</div>
389397
<div class="cell border-box-sizing code_cell rendered">
390398
<div class="input">
391-
<div class="prompt input_prompt">In&nbsp;[24]:</div>
399+
<div class="prompt input_prompt">In&nbsp;[15]:</div>
392400
<div class="inner_cell">
393401
<div class="input_area">
394-
<div class=" highlight hl-ipython2"><pre><span class="n">trace1</span><span class="p">[</span><span class="s">&#39;marker&#39;</span><span class="p">][</span><span class="s">&#39;symbol&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="s">&#39;.&#39;</span>
402+
<div class=" highlight hl-ipython2"><pre><span class="n">trace1</span><span class="p">[</span><span class="s">&#39;marker&#39;</span><span class="p">][</span><span class="s">&#39;symbol&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="s">&#39;x&#39;</span>
395403
<span class="n">trace1</span><span class="p">[</span><span class="s">&#39;marker&#39;</span><span class="p">][</span><span class="s">&#39;color&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="s">&#39;#4d79ff&#39;</span>
396404
<span class="n">traces</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">trace1</span><span class="p">)</span>
397405

@@ -407,7 +415,7 @@ <h3 id="Scatter-Plot-Overlaid-on-Contour-Plot:">Scatter Plot Overlaid on Contour
407415
</div>
408416
<div class="cell border-box-sizing code_cell rendered">
409417
<div class="input">
410-
<div class="prompt input_prompt">In&nbsp;[25]:</div>
418+
<div class="prompt input_prompt">In&nbsp;[16]:</div>
411419
<div class="inner_cell">
412420
<div class="input_area">
413421
<div class=" highlight hl-ipython2"><pre><span class="n">figure</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="n">data</span><span class="o">=</span><span class="n">traces</span><span class="p">,</span> <span class="n">layout</span><span class="o">=</span><span class="n">layout</span><span class="p">)</span>
@@ -420,7 +428,7 @@ <h3 id="Scatter-Plot-Overlaid-on-Contour-Plot:">Scatter Plot Overlaid on Contour
420428
</div>
421429
<div class="cell border-box-sizing code_cell rendered">
422430
<div class="input">
423-
<div class="prompt input_prompt">In&nbsp;[26]:</div>
431+
<div class="prompt input_prompt">In&nbsp;[17]:</div>
424432
<div class="inner_cell">
425433
<div class="input_area">
426434
<div class=" highlight hl-ipython2"><pre><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>
@@ -434,15 +442,28 @@ <h3 id="Scatter-Plot-Overlaid-on-Contour-Plot:">Scatter Plot Overlaid on Contour
434442
<div class="output">
435443

436444

437-
<div class="output_area"><div class="prompt output_prompt">Out[26]:</div>
445+
<div class="output_area"><div class="prompt output_prompt">Out[17]:</div>
438446

439447
<div class="output_html rendered_html output_subarea output_execute_result">
440-
<iframe id="igraph" scrolling="no" style="border:none;" seamless="seamless" src="https://plot.ly/~tarzzz/2277.embed" height="525px" width="100%"></iframe>
448+
<iframe id="igraph" scrolling="no" style="border:none;" seamless="seamless" src="https://plot.ly/~tarzzz/2303.embed" height="525px" width="100%"></iframe>
449+
</div>
450+
451+
</div>
452+
453+
</div>
441454
</div>
442455

443456
</div>
457+
<div class="cell border-box-sizing code_cell rendered">
458+
<div class="input">
459+
<div class="prompt input_prompt">In&nbsp;[&nbsp;]:</div>
460+
<div class="inner_cell">
461+
<div class="input_area">
462+
<div class=" highlight hl-ipython2"><pre>
463+
</pre></div>
444464

465+
</div>
445466
</div>
446467
</div>
447468

448-
</div>{% endraw %}
469+
</div>{% endraw %}

0 commit comments

Comments
 (0)