Hay cần họcKTL cơ bản

Hướng dẫn tạo biểu đồ Infographic trên Stata

Bằng cách sử dụng các giá trị nhãn với các phông chữ đồ họa, chúng ta có thể tạo những biểu đồ Infographics đặc sắc và mang nhiều ý nghĩa trên Stata. Bài viết bên dưới sẽ hướng dẫn cách tạo biểu đồ infographics thông qua ví dụ so sánh mức lương trung bình của các nhóm phụ nữ (chưa kết hôn, kết hôn và đã ly hôn) theo tuổi.

Biểu đồ Infographic

Infographic có thể hiểu là một đồ họa thông tin sử dụng hình ảnh, đôi khi có một số từ, để truyền tải một phần thông tin. Bạn có thể tạo một infographic trong Stata bằng cách sử dụng các phông chữ đặc biệt. Các phông chữ này có hình ảnh được gán cho các ký tự chữ cái, vì vậy, ví dụ: khi bạn đặt chữ “A” vào phông chữ, bạn sẽ thấy hình ảnh của một chiếc ô tô. Nhiều phông chữ khác nhau có sẵn miễn phí thông qua các trang web phông chữ khác nhau. Bạn cũng có thể tạo của riêng mình nếu bạn biết cách.

Minh họa vẽ Infographic trên Stata

Dữ liệu thực hành

Ở đây tôi sẽ tạo một Infographic bằng cách sử dụng một mẫu dữ liệu con từ tập nlsw88.dta sẵn có trên Stata. Đây là bộ dữ liệu Điều tra dọc quốc gia về phụ nữ trẻ và phụ nữ trưởng thành năm 1988 (NLSW).

Ví dụ bên dưới so sánh mức lương trung bình và độ tuổi trung bình của phụ nữ độc thân (chưa kết hôn), đã kết hôn và đã ly hôn. Để tạo đồ họa này, trước tiên chúng ta cần tính toán mức lương trung bình và độ tuổi trung bình cho từng nhóm phụ nữ này.

Thiết lập phông chữ

Ví dụ minh họa bên dưới sử dụng phông chữ Silhous được tải về tại: https://www.fontspace.com/silhous-font-f3542.

Lưu ý: bạn cần tải phông chữ này về máy đúng cách (C:\Windows\Fonts) trước khi thực hiện tiếp các bước còn lại.

Tạo biến quan tâm

. sysuse nlsw88.dta, clear
(NLSW, 1988 extract)

. egen swage = mean(wage) if never_married == 1
(2,012 missing values generated)

. egen mwage = mean(wage) if married == 1
(804 missing values generated)

. egen dwage = mean(wage) if never_married == 0 & married == 0
(1,676 missing values generated)

. label variable swage "Wage ($ per hour)"

. label variable mwage "Wage ($ per hour)"

. label variable dwage "Wage ($ per hour)"

. egen sage = mean(age) if never_married == 1
(2,012 missing values generated)

. egen mage = mean(age) if married == 1
(804 missing values generated)

. egen dage = mean(age) if never_married == 0 & married == 0
(1,676 missing values generated)

. label variable sage "Age (Average)"

. label variable mage "Age (Average)"

. label variable dage "Age (Average)"

Tạo giá trị nhãn

Bây giờ chúng ta có mức lương và độ tuổi trung bình, chúng ta cần tạo một biến nhãn để gắn nhãn cho mỗi quan sát là đã kết hôn, độc thân hoặc đã ly hôn.

. generate marsindiv = 1

. replace marsindiv = 0 if never_married == 0 & married == 0
(570 real changes made)

. replace marsindiv = 2 if never_married == 1
(234 real changes made)

. label define marsinlbl 0 `"{fontface "Silhous": -.}"' 1 `"{fontface "Silhous": T}"' 2 `"{fontface "Silhous": E}"'

. label values marsindiv marsinlbl

Ở bước này, tôi đã gán giá trị nhãn đi kèm với phông chữ đồ họa đã khai báo ở trên. Từ các giá trị nhãn này, chúng ta tạo một biểu đồ phân tán như sau:

  • Nhóm đã kết hôn sẽ gán kí tự T và được tô màu hồng
  • Nhóm chưa kết hôn sẽ gán kí tự E và được tô màu đỏ
  • Nhóm đã ly hôn sẽ gán kí tự -. và được tô màu xanh
. twoway (scatter swage sage, mlabsize(*20) mlabcolor(red) mlabel(marsindiv) msymbol(i) legend(off) ylabel(7(.4)9, nogrid) xlabel(38.5(.
> 5)40.5)) (scatter mwage mage, mlabsize(*5) mlabcolor(purple) mlabel(marsindiv) msymbol(i)) (scatter dwage dage, mlabsize(*10) mlabcolo
> r(blue) mlabel(marsindiv) msymbol(i))
 
. graph export infographics.png, replace
file infographics.png saved as PNG format
Tạo biểu đồ Infographic trên Stata
Tạo biểu đồ Infographic trên Stata

Diễn giải câu lệnh

Ở câu lệnh trên có ba biểu đồ phân tán chồng lên nhau, mỗi đồ thị được bắt đầu với lệnh scatter.

  • Tùy chọn mlabsize() được sử dụng để tạo các biểu tượng có độ lớn khác nhau theo mức lương của mỗi nhóm. Giá trị thiết lập trong tùy chọn này cho biết độ lớn tương đối, chẳng hạn, mlabsize(*10) sẽ lớn gấp đôi mlabsize(*5).
  • Tùy chọn mlabcolor() chỉ định màu mà chúng ta muốn nhãn hiển thị.
  • Tùy chọn mlabel() thiết lập nhãn hiển thị dựa trên phông chữ đã chọn. Ở đây, giá trị nhãn marsinlbl mà tôi đã tạo chứa thông tin cho phông chữ Silhous bên trên.
  • Tùy chọn msymbol(i) chỉ định ký hiệu đánh dấu nào chúng ta muốn. Ở đây, tôi chọn kí tự i vì tôi muốn các điểm đánh dấu được ẩn đi trên đồ thị (tôi chỉ muốn nhìn thấy các nhãn).
  • Tùy chọn legend(off) thiết lập ẩn các chú giải và
  • Các tùy chọn ylabel()xlabel() thiết lập khoảng giá trị của trục X và Y.
Source
SDAS
Back to top button