Profile
| Club | Shanghai Port |
| Nationality | China |
| Height | 182 cm |
| Market Value | 0M EUR |
| Number | #22 |
Season Summary (36 matches, 2485' played)
2
Goals
1
Assists
6.89
Avg Rating
0.0
xG
0.0
xA
ATTACKING
| Shots | 7 |
| On target | 4 |
| Key passes | 21 |
| Pass accuracy | 71.6% |
DEFENSIVE
| Tackles | 73 |
| Interceptions | 40 |
| Clearances | 81 |
| Recoveries | 118 |
DUELS & DISCIPLINE
| Duels won | 214/414 |
| Aerials won | 24/61 |
| Yellow cards | 7 |
| Red cards | 0 |
Per 90 Minutes
0.07
Goals
0.04
Assists
0.0
xG
0.0
xA
0.25
Shots
0.76
Key Passes
2.64
Tackles
1.45
Interceptions
7.75
Duels Won
Match-by-Match Statistics
| Date | League | Match | Min | Rating | G | A | xG | Shots | KP | Pass% | Tackles | Duels | Cards |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| May 02 | Chinese Sup… | Qingdao Hai… 3-1 Shanghai Po… | 90 | 6.7 | 1 | 0 | - | 2(2) | 1 | 35/38 | 1 | 5/17 | - |
| Apr 25 | Chinese Sup… | Shanghai Po… 4-- Wuhan Three… | 90 | 7.6 | 0 | 0 | - | 0 | 1 | 27/33 | 4 | 13/18 | - |
| Apr 21 | Chinese Sup… | Shanghai Po… 1-2 Chongqing T… | 90 | 6.4 | 0 | 0 | - | 0 | 2 | 40/47 | 1 | 5/16 | - |
| Apr 17 | Chinese Sup… | Shandong Ta… 1-1 Shanghai Po… | 90 | 7.6 | 1 | 0 | - | 1(1) | 0 | 10/16 | 1 | 8/18 | - |
| Apr 11 | Chinese Sup… | Shanghai Sh… 1-- Shanghai Po… | 69 | 6.5 | 0 | 0 | - | 0 | 0 | 13/16 | 0 | 5/12 | - |
| Apr 04 | Chinese Sup… | Shanghai Po… 2-1 Yunnan Yukun | 90 | 6.7 | 0 | 0 | - | 0 | 1 | 30/37 | 2 | 6/14 | - |
| Mar 20 | Chinese Sup… | Dalian Ying… 1-- Shanghai Po… | 90 | 5.7 | 0 | 0 | - | 0 | 1 | 11/27 | 4 | 9/21 | - |
| Mar 15 | Chinese Sup… | Shanghai Po… 4-1 Qingdao Wes… | 90 | 7.1 | 0 | 0 | - | 1 | 2 | 36/46 | 1 | 7/11 | - |
| Mar 07 | Chinese Sup… | Shanghai Po… 1-2 Henan FC | 90 | 7.2 | 0 | 1 | - | 1 | 3 | 24/35 | 4 | 9/22 | - |
| Nov 22 | Chinese Sup… | Qingdao Wes… 1-- Changchun Y… | 90 | 7.7 | 0 | 0 | - | 0 | 1 | 27/30 | 2 | 8/13 | - |
| Oct 26 | Chinese Sup… | Qingdao Wes… 2-2 Chengdu Ron… | 90 | 7.5 | 0 | 0 | - | 0 | 1 | 15/20 | 6 | 18/30 | ■ |
| Oct 17 | Chinese Sup… | Qingdao Wes… 1-2 Shanghai Sh… | 90 | 6.9 | 0 | 0 | - | 0 | 0 | 12/18 | 3 | 9/15 | - |
| Oct 04 | Chinese Sup… | Dalian Ying… --2 Qingdao Wes… | 90 | 7.4 | 0 | 0 | - | 0 | 1 | 8/20 | 5 | 9/16 | - |
| Sep 28 | Chinese Sup… | Shenzhen Pe… 1-2 Qingdao Wes… | 90 | 6.5 | 0 | 0 | - | 0 | 1 | 30/40 | 1 | 4/11 | ■ |
| Sep 20 | Chinese Sup… | Meizhou Hak… 1-2 Qingdao Wes… | 90 | 6.6 | 0 | 0 | - | 0 | 0 | 17/25 | 3 | 8/16 | - |
| Sep 13 | Chinese Sup… | Qingdao Wes… --2 Zhejiang | 90 | 7.0 | 0 | 0 | - | 0 | 0 | 33/45 | 6 | 9/12 | - |
| Aug 24 | Chinese Sup… | Shandong Ta… 3-2 Qingdao Wes… | 90 | 7.2 | 0 | 0 | - | 0 | 0 | 17/28 | 8 | 13/17 | - |
| Aug 16 | Chinese Sup… | Qingdao Wes… 1-3 Beijing Guo… | 90 | 6.7 | 0 | 0 | - | 0 | 1 | 14/25 | 3 | 11/19 | ■ |
| Aug 10 | Chinese Sup… | Tianjin Jin… --- Qingdao Wes… | 90 | 6.9 | 0 | 0 | - | 0 | 1 | 40/48 | 1 | 4/10 | - |
| Jul 26 | Chinese Sup… | Shanghai Po… 2-2 Qingdao Wes… | 88 | 7.3 | 0 | 0 | - | 0 | 0 | 10/16 | 4 | 5/12 | ■ |
| Jul 18 | Chinese Sup… | Wuhan Three… 1-1 Qingdao Wes… | 81 | 6.1 | 0 | 0 | - | 0 | 0 | 12/18 | 1 | 3/12 | - |
| Jun 29 | Chinese Sup… | Qingdao Wes… 1-- Qingdao Hai… | 90 | 6.9 | 0 | 0 | - | 1 | 0 | 12/21 | 3 | 6/12 | - |
| Jun 25 | Chinese Sup… | Changchun Y… 1-- Qingdao Wes… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Jun 17 | Chinese Sup… | Beijing Guo… 1-- Qingdao Wes… | 90 | 6.9 | 0 | 0 | - | 0 | 1 | 14/19 | 1 | 4/7 | ■ |
| Jun 14 | Chinese Sup… | Qingdao Wes… --- Yunnan Yukun | 89 | 6.6 | 0 | 0 | - | 0 | 1 | 19/25 | 0 | 4/12 | - |
| May 17 | Chinese Sup… | Chengdu Ron… 1-1 Qingdao Wes… | 90 | 7.4 | 0 | 0 | - | 1(1) | 0 | 20/25 | 3 | 9/13 | ■ |
| May 10 | Chinese Sup… | Shanghai Sh… 4-- Qingdao Wes… | 80 | 6.2 | 0 | 0 | - | 0 | 1 | 20/31 | 1 | 4/11 | - |
| May 06 | Chinese Sup… | Qingdao Wes… --- Shenzhen Pe… | 90 | 7.4 | 0 | 0 | - | 0 | 1 | 27/41 | 1 | 11/14 | ■ |
| May 02 | Chinese Sup… | Qingdao Wes… 3-1 Meizhou Hak… | 90 | 6.6 | 0 | 0 | - | 0 | 0 | 7/17 | 3 | 7/11 | - |
| Apr 27 | Chinese Sup… | Zhejiang 2-1 Qingdao Wes… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Apr 20 | Chinese Sup… | Qingdao Wes… 2-- Dalian Ying… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Apr 15 | Chinese Sup… | Qingdao Wes… 1-5 Shandong Ta… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Apr 06 | Chinese Sup… | Qingdao Wes… 2-2 Tianjin Jin… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Apr 01 | Chinese Sup… | Henan FC 2-3 Qingdao Wes… | 8 | 6.6 | 0 | 0 | - | 0 | 0 | 1/5 | 0 | 1/2 | - |
| Mar 28 | Chinese Sup… | Qingdao Wes… 3-3 Shanghai Po… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Mar 03 | Chinese Sup… | Qingdao Wes… 2-- Wuhan Three… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
Get Xi Yang's data via the API:
# Player profile (+ transfers, preferred foot, contract)
curl -H "Authorization: Token YOUR_API_KEY" \
"https://sports.bzzoiro.com/api/players/47405/"
# All match-by-match stats (30+ metrics per game + heatmap)
curl -H "Authorization: Token YOUR_API_KEY" \
"https://sports.bzzoiro.com/api/player-stats/?player=47405"