一個影象裡面繪製兩套資料是非常常見的,但多數情況是這兩套資料擁有相同的x軸(比如都是年度資料),那麼不同x軸的資料(比如年度資料和日度資料)如何繪製到一幅圖中呢?

1。 Stata繪製雙軸圖

之前我們介紹過很多

Stata繪圖

的小技巧(沒看過的可以翻一翻公眾號的歷史記錄),今天我們介紹如何將不同x軸的資料繪製到一幅圖中。

先看資料:

這是人民幣兌美元的日度資料:

Stata繪圖:年度資料、日度資料如何繪製在一起?

這是中國對美出口的年度資料:

Stata繪圖:年度資料、日度資料如何繪製在一起?

如何將其繪製在一起呢?先合併資料:

// 資料合併

use

人民幣兌美元匯率

dta

clear

gen

year

=

yofd

date

// 生成year變數

merge

m

1

year

using

中國對美出口

dta

nogen

結果如下:

Stata繪圖:年度資料、日度資料如何繪製在一起?

可以看到,一年有多少個交易日,就有多少個相同的

對美出口額

然後,每年只保留第一個

對美出口額

// 貿易值每年只保留第一個

gen

tag

=

對美出口額

_n

-

對美出口額

_n

-

1

// 對資料進行差分

replace

對美出口額

=

if

tag

==

0

//

每一年只保留第一個值

接下來我們初步繪圖:

// 繪圖

twoway

bar

對美出口額

date

///

line

人民幣兌美元

date

yaxis

2

))

結果如下:

Stata繪圖:年度資料、日度資料如何繪製在一起?

可以看到基本像個樣子。

2。 圖片精裝修

這樣的圖片顯然是拿不出手的。我們進一步對圖片進行精裝修:

format

date

%

tdCCYY

#delimit ;

twoway

bar

對美出口額

date

barw

250

lc

black

line

人民幣兌美元

date

yaxis

2

lc

black

*

0。8

)),

xtitle

“”

ytitle

“對美貿易餘額(十億美元)”

ytitle

“人民幣兌美元(中間價)”

axis

2

))

ylabel

0

50

300

xlabel

`

=

td

1

/

1

/

1994

735

`

=

td

1

/

12

/

2019

legend

label

1

對美貿易餘額

label

2

人民幣兌美元中間價

symxsize

*

0。5

size

*

0。8

ring

0

pos

11

))

xsize

16

ysize

9

scheme

s1mono

#delimit cr

結果如下:

Stata繪圖:年度資料、日度資料如何繪製在一起?

恩,還行!

對上述程式碼略加說明:

第1行,將變數

date

的形式從

1jan1994

變成

1994

這樣的形式,即只保留年份,這樣在最後的x軸上就只有年份;

第3行,

barw()

柱形

的寬度,預設為1,即1個單位的寬度。一年有365天,但真正的

交易日

大概260天左右,為了讓柱形粗一點,這裡設定為250;

第9行,

td(1/1/1994)

即“1/1/1994”對應的數字;一年有365天,為了在

座標軸

上每2年標一個刻度,那麼間隔就應該是365*2=730,當然避免閏年可以稍微設大一點,這裡為735;最後結束日期為“1/12/2019”。至於

`=td()‘

就是我們之間介紹過暫元的用法。

第12-13行,設定圖片的尺寸為16*9。

Stata繪圖:年度資料、日度資料如何繪製在一起?