[Pyecharts visual sharing] popular walking routes in Hangzhou

Keywords: JSON

Preface

This paper includes the following contents:

  • Popular walking routes in Hangzhou
  • Gradient scatter

All are examples officially provided by eckarts. This article will implement them through Pyecharts.

Popular walking routes in Hangzhou

Complete code

from pyecharts import options as opts
from pyecharts.charts import BMap
from pyecharts.globals import ChartType, SymbolType, ThemeType
import requests

# Get data through requests
r = requests.get('https://echarts.baidu.com/examples/data/asset/data/hangzhou-tracks.json')
data = r.json()

data_pair = []

# Create a new BMap object
bmap = BMap()

for i, item in enumerate([j for i in data for j in i ]):
    # New coordinate point
    bmap.add_coordinate(i, item['coord'][0], item['coord'][1])
    data_pair.append((i, 1)) 

bmap.add_schema(
    # Need to apply for an AK
    baidu_ak='VtTfLEPhrSmI34foXXozmE441uDOSA7V',
    # Map zoom
    zoom=14, 
    # Show map center coordinate points
    center=[120.13066322374, 30.240018034923])

# Add data
bmap.add("Number of stores", data_pair,
         type_='heatmap')

# Data labels do not display
bmap.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
bmap.set_global_opts(
    visualmap_opts=opts.VisualMapOpts(min_=0, max_=50, 
                                      # Color effects borrow eckarts sample effects
                                      range_color=['blue', 'blue', 'green', 'yellow', 'red']),
    # Legend not shown
    legend_opts=opts.LegendOpts(is_show=False),
    title_opts=opts.TitleOpts(title="Popular walking routes in Hangzhou"))

# Rendering in notebook
# Other running environments use bmap.render()
bmap.render_notebook()

Realization effect

Gradient scatter

Complete code

from pyecharts import options as opts
from pyecharts.charts import Scatter
from pyecharts.globals import ThemeType
from pyecharts.commons.utils import JsCode

# Life expectancy in GDP
data = [[[28604,77,17096869,'Australia',1990],[31163,77.4,27662440,'Canada',1990],[1516,68,1154605773,'China',1990],[13670,74.7,10582082,'Cuba',1990],[28599,75,4986705,'Finland',1990],[29476,77.1,56943299,'France',1990],[31476,75.4,78958237,'Germany',1990],[28666,78.1,254830,'Iceland',1990],[1777,57.7,870601776,'India',1990],[29550,79.1,122249285,'Japan',1990],[2076,67.9,20194354,'North Korea',1990],[12087,72,42972254,'South Korea',1990],[24021,75.4,3397534,'New Zealand',1990],[43296,76.8,4240375,'Norway',1990],[10088,70.8,38195258,'Poland',1990],[19349,69.6,147568552,'Russia',1990],[10670,67.3,53994605,'Turkey',1990],[26424,75.7,57110117,'United Kingdom',1990],[37062,75.4,252847810,'United States',1990]],
    [[44056,81.8,23968973,'Australia',2015],[43294,81.7,35939927,'Canada',2015],[13334,76.9,1376048943,'China',2015],[21291,78.5,11389562,'Cuba',2015],[38923,80.8,5503457,'Finland',2015],[37599,81.9,64395345,'France',2015],[44053,81.1,80688545,'Germany',2015],[42182,82.8,329425,'Iceland',2015],[5903,66.8,1311050527,'India',2015],[36162,83.5,126573481,'Japan',2015],[1390,71.4,25155317,'North Korea',2015],[34644,80.7,50293439,'South Korea',2015],[34186,80.6,4528526,'New Zealand',2015],[64304,81.6,5210967,'Norway',2015],[24787,77.3,38611794,'Poland',2015],[23038,73.13,143456918,'Russia',2015],[19360,76.5,78665830,'Turkey',2015],[38225,81.4,64715810,'United Kingdom',2015],[53354,79.1,321773631,'United States',2015]]]

scatter = (Scatter()
           .add_xaxis([i[0] for i in data[0]])
           .add_yaxis("1990 year", [[i[1],i[3], i[2]] for i in data[0]],
                      # Gradient effect implementation part
                      color=JsCode("""new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                                        offset: 0,
                                        color: 'rgb(251, 118, 123)'
                                    }, {
                                        offset: 1,
                                        color: 'rgb(204, 46, 72)'
                                    }])"""))
           .add_yaxis("2015 year", [[i[1],i[3], i[2]]  for i in data[1]], 
                      # Gradient effect implementation part
                      color=JsCode("""new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                                        offset: 0,
                                        color: 'rgb(129, 227, 238)'
                                    }, {
                                        offset: 1,
                                        color: 'rgb(25, 183, 207)'
                                    }])"""))
           .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
           .set_global_opts(
               title_opts=opts.TitleOpts(title="1990 And the average life expectancy of each country in 2015 GDP"),
               tooltip_opts = opts.TooltipOpts(
                   # Display prompt as country by executing js code
                   formatter=JsCode("function (param) {return param.data[2];}")),
               xaxis_opts=opts.AxisOpts(
                   # Set axis to numerical type
                   type_="value", 
                   # Show split lines
                   splitline_opts=opts.SplitLineOpts(is_show=True)),
               yaxis_opts=opts.AxisOpts(
                   # Set axis to numerical type
                   type_="value",
                   # The default is False, which means the starting point is 0
                   is_scale=True,
                   splitline_opts=opts.SplitLineOpts(is_show=True),),
               # The third measure in the data is shown by the size of the graph
               visualmap_opts=opts.VisualMapOpts(is_show=False, type_='size', min_=20194354, max_=1154605773)
    ))

scatter.render_notebook() 

Realization effect

11 original articles published, 21 praised, 494 visited
Private letter follow

Posted by pandu345 on Fri, 21 Feb 2020 07:31:38 -0800