Ví dụ trực quan hóa dữ liệu Python

Trực quan hóa dữ liệu trong python có lẽ là một trong những tính năng được sử dụng nhiều nhất cho khoa học dữ liệu với python trong thời đại ngày nay. Các thư viện trong python đi kèm với rất nhiều tính năng khác nhau cho phép người dùng tạo các biểu đồ tương tác, trang nhã và tùy biến cao

Trong bài viết này, chúng tôi sẽ đề cập đến việc sử dụng Matplotlib, Seaborn cũng như giới thiệu về các gói thay thế khác có thể được sử dụng trong trực quan hóa python

Trong Matplotlib và Seaborn, chúng tôi sẽ đề cập đến một số sơ đồ được sử dụng phổ biến nhất trong thế giới khoa học dữ liệu để dễ hình dung

Ở phần sau của bài viết, chúng ta sẽ xem xét một tính năng mạnh mẽ khác trong trực quan hóa python, ô con và trình bày hướng dẫn cơ bản để tạo ô con

Các gói hữu ích để trực quan hóa trong python

Matplotlib

Matplotlib là một thư viện trực quan hóa bằng Python cho các mảng 2D. Matplotlib được viết bằng Python và sử dụng thư viện NumPy. Nó có thể được sử dụng trong trình bao Python và IPython, máy tính xách tay Jupyter và máy chủ ứng dụng web. Matplotlib đi kèm với nhiều loại biểu đồ như đường, thanh, phân tán, biểu đồ, v.v. có thể giúp chúng ta đi sâu vào việc hiểu các xu hướng, mô hình, mối tương quan. Nó được giới thiệu bởi John Hunter vào năm 2002

sinh ra biển

Seaborn là một thư viện định hướng tập dữ liệu để tạo các biểu diễn thống kê trong Python. Nó được phát triển trên đỉnh matplotlib và để tạo các hình ảnh trực quan khác nhau. Nó được tích hợp với cấu trúc dữ liệu gấu trúc. Thư viện nội bộ thực hiện ánh xạ và tổng hợp cần thiết để tạo hình ảnh thông tin. Nên sử dụng giao diện Jupyter/IPython ở chế độ matplotlib

Bokeh

Bokeh là một thư viện hình ảnh tương tác cho các trình duyệt web hiện đại. Nó phù hợp với nội dung dữ liệu lớn hoặc truyền trực tuyến và có thể được sử dụng để phát triển các biểu đồ và bảng điều khiển tương tác. Có rất nhiều biểu đồ trực quan trong thư viện có thể được tận dụng để phát triển các giải pháp. Nó hoạt động chặt chẽ với các công cụ PyData. Thư viện rất phù hợp để tạo hình ảnh tùy chỉnh theo các trường hợp sử dụng được yêu cầu. Các hình ảnh cũng có thể được thực hiện tương tác để phục vụ mô hình kịch bản what-if. Tất cả các mã đều là mã nguồn mở và có sẵn trên GitHub

bàn thờ

Altair là một thư viện trực quan thống kê khai báo cho Python. API của Altair thân thiện với người dùng, nhất quán và được xây dựng dựa trên đặc tả JSON của Vega-Lite. Thư viện khai báo chỉ ra rằng trong khi tạo bất kỳ hình ảnh nào, chúng ta cần xác định liên kết giữa các cột dữ liệu với các kênh [trục x, trục y, kích thước, màu sắc]. Với sự trợ giúp của Altair, có thể tạo hình ảnh thông tin với mã tối thiểu. Altair giữ một ngữ pháp khai báo về cả trực quan hóa và tương tác

âm mưu

âm mưu. py là một thư viện trực quan tương tác, nguồn mở, cấp cao, khai báo và dựa trên trình duyệt dành cho Python. Nó chứa một loạt các hình ảnh hữu ích bao gồm biểu đồ khoa học, đồ thị 3D, biểu đồ thống kê, biểu đồ tài chính trong số những biểu đồ khác. Biểu đồ đồ thị có thể được xem trong sổ ghi chép Jupyter, tệp HTML độc lập hoặc được lưu trữ trực tuyến. Thư viện Plotly cung cấp các tùy chọn để tương tác và chỉnh sửa. API mạnh mẽ hoạt động hoàn hảo ở cả chế độ trình duyệt web và cục bộ

ggplot

ggplot là một triển khai Python của ngữ pháp đồ họa. Ngữ pháp đồ họa đề cập đến việc ánh xạ dữ liệu tới các thuộc tính thẩm mỹ [màu sắc, hình dạng, kích thước] và các đối tượng hình học [điểm, đường, thanh]. Các khối xây dựng cơ bản theo ngữ pháp của đồ họa là dữ liệu, geom [đối tượng hình học], thống kê [biến đổi thống kê], tỷ lệ, hệ tọa độ và khía cạnh

Sử dụng ggplot trong Python cho phép bạn phát triển dần các hình ảnh trực quan hóa thông tin, trước tiên hiểu được các sắc thái của dữ liệu, sau đó điều chỉnh các thành phần để cải thiện các hình ảnh đại diện

Làm thế nào để sử dụng hình dung đúng?

Để trích xuất thông tin cần thiết từ các hình ảnh khác nhau mà chúng tôi tạo ra, điều cốt yếu là chúng tôi sử dụng biểu diễn chính xác dựa trên loại dữ liệu và câu hỏi mà chúng tôi đang cố gắng hiểu. Chúng ta sẽ đi qua một tập hợp các biểu diễn được sử dụng rộng rãi nhất bên dưới và cách chúng ta có thể sử dụng chúng theo cách hiệu quả nhất

Biểu đồ cột

Biểu đồ thanh được sử dụng khi chúng tôi muốn so sánh các giá trị số liệu trên các nhóm dữ liệu con khác nhau. Nếu chúng ta có nhiều nhóm hơn, biểu đồ thanh sẽ được ưu tiên hơn biểu đồ cột

Biểu đồ thanh sử dụng Matplotlib

Biểu đồ thanh sử dụng Seaborn

#Creating bar plot
sns.barplot[x = 'fare',y = 'who',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]

Biểu đồ cột

Biểu đồ cột chủ yếu được sử dụng khi chúng ta cần so sánh một loại dữ liệu giữa các mục con riêng lẻ, ví dụ: khi so sánh doanh thu giữa các khu vực

Biểu đồ cột sử dụng Matplotlib

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]

Biểu đồ cột sử dụng Seaborn

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]

Biểu đồ thanh được nhóm

Biểu đồ thanh được nhóm được sử dụng khi chúng ta muốn so sánh các giá trị trong các nhóm và nhóm phụ nhất định

Biểu đồ thanh được nhóm bằng Matplotlib

#Creating the dataset
df = sns.load_dataset['titanic']
df_pivot = pd.pivot_table[df, values="fare",index="who",columns="class", aggfunc=np.mean]
#Creating a grouped bar chart
ax = df_pivot.plot[kind="bar",alpha=0.5]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]

Biểu đồ thanh được nhóm bằng Seaborn

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating the bar plot grouped across classes
sns.barplot[x = 'who',y = 'fare',hue = 'class',data = titanic_dataset, palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]

Biểu đồ thanh xếp chồng lên nhau

Biểu đồ thanh xếp chồng lên nhau được sử dụng khi chúng tôi muốn so sánh tổng kích thước giữa các nhóm có sẵn và thành phần của các nhóm phụ khác nhau

Biểu đồ thanh xếp chồng lên nhau bằng Matplotlib

# Stacked bar chart 
#Creating the dataset
df = pd.DataFrame[columns=["A","B", "C","D"], 
                  data=[["E",0,1,1],
                        ["F",1,1,0],
                        ["G",0,1,0]]]

df.plot.bar[x='A', y=["B", "C","D"],  stacked=True,  width = 0.4,alpha=0.5] 

#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title']  

#Show the plot
plt.show[]

Biểu đồ thanh xếp chồng sử dụng Seaborn

dataframe = pd.DataFrame[columns=["A","B", "C","D"], 
                  data=[["E",0,1,1],
                        ["F",1,1,0],
                        ["G",0,1,0]]]
dataframe.set_index['A'].T.plot[kind='bar', stacked=True]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]

biểu đồ đường

Biểu đồ đường được sử dụng để biểu diễn các điểm dữ liệu liên tục. Hình ảnh này có thể được sử dụng hiệu quả khi chúng ta muốn hiểu xu hướng theo thời gian

Biểu đồ đường bằng Matplotlib

#Creating the dataset
df = sns.load_dataset["iris"] 
df=df.groupby['sepal_length']['sepal_width'].sum[].to_frame[].reset_index[]
#Creating the line chart
plt.plot[df['sepal_length'], df['sepal_width']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]

Biểu đồ đường sử dụng Seaborn

________số 8

Biểu đồ tròn

Biểu đồ hình tròn có thể được sử dụng để xác định tỷ lệ của các thành phần khác nhau trong một tổng thể nhất định

Biểu đồ hình tròn sử dụng Matplotlib

________số 8

Biểu đồ vùng

Biểu đồ vùng được sử dụng để theo dõi các thay đổi theo thời gian cho một hoặc nhiều nhóm. Biểu đồ vùng được ưu tiên hơn biểu đồ đường khi chúng tôi muốn nắm bắt các thay đổi theo thời gian cho nhiều hơn 1 nhóm

Biểu đồ vùng sử dụng Matplotlib

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
0

Biểu đồ vùng sử dụng Seaborn

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
1

biểu đồ cột

Biểu đồ cột được sử dụng để quan sát phân phối cho một biến duy nhất có ít điểm dữ liệu

Biểu đồ cột sử dụng Matplotlib

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
2

Biểu đồ cột sử dụng Seaborn

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
3

biểu đồ dòng

Biểu đồ đường được sử dụng để quan sát phân phối cho một biến duy nhất có nhiều điểm dữ liệu

Biểu đồ biểu đồ đường bằng Matplotlib

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
4

Biểu đồ biểu đồ đường bằng Seaborn

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
5

âm mưu phân tán

Biểu đồ phân tán có thể được tận dụng để xác định mối quan hệ giữa hai biến. Nó có thể được sử dụng hiệu quả trong trường hợp biến phụ thuộc có thể có nhiều giá trị cho biến độc lập

Biểu đồ phân tán bằng Matplotlib

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
6

Biểu đồ phân tán bằng Seaborn

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
7

Biểu đồ bong bóng

Biểu đồ phân tán có thể được tận dụng để mô tả và hiển thị mối quan hệ giữa ba biến

Biểu đồ bong bóng sử dụng Matplotlib

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
8

Biểu đồ bong bóng sử dụng Seaborn

#Creating the dataset
df = sns.load_dataset['titanic'] 
df=df.groupby['who']['fare'].sum[].to_frame[].reset_index[]
#Creating the column plot 
plt.bar[df['who'],df['fare'],color = ['#F0F8FF','#E6E6FA','#B0E0E6']] 
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
#Show the plot
plt.show[]
9

cốt truyện hộp

Biểu đồ hộp được sử dụng để hiển thị hình dạng của phân phối, giá trị trung tâm và tính biến thiên của nó

Biểu đồ hộp sử dụng Matplotlib

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]
0

Biểu đồ hộp sử dụng Seaborn

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]
1

Biểu đồ thác nước

Biểu đồ thác nước có thể được sử dụng để giải thích quá trình chuyển đổi dần dần về giá trị của một biến có thể tăng hoặc giảm

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]
2

biểu đồ Venn

Sơ đồ Venn được sử dụng để xem mối quan hệ giữa hai hoặc ba bộ mục. Nó làm nổi bật những điểm tương đồng và khác biệt

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]
3

bản đồ cây

Bản đồ cây chủ yếu được sử dụng để hiển thị dữ liệu được nhóm và lồng trong cấu trúc phân cấp và quan sát sự đóng góp của từng thành phần

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]
4

Biểu đồ thanh xếp chồng 100%

Biểu đồ thanh xếp chồng 100% có thể được tận dụng khi chúng tôi muốn hiển thị sự khác biệt tương đối trong mỗi nhóm cho các nhóm phụ khác nhau có sẵn

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]
5

ô biên

Biểu đồ cận biên được sử dụng để đánh giá mối quan hệ giữa hai biến và kiểm tra phân phối của chúng. Các ô như vậy phân tán các ô có biểu đồ, ô hộp hoặc ô chấm ở lề của các trục x và y tương ứng

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]
6

ô phụ

Các ô con là hình ảnh trực quan mạnh mẽ giúp so sánh dễ dàng giữa các ô

#Reading the dataset
titanic_dataset = sns.load_dataset['titanic']
#Creating column chart
sns.barplot[x = 'who',y = 'fare',data = titanic_dataset,palette = "Blues"]
#Adding the aesthetics
plt.title['Chart title']
plt.xlabel['X axis title']
plt.ylabel['Y axis title'] 
# Show the plot
plt.show[]
7

Tóm lại, có một loạt các thư viện khác nhau có thể được tận dụng hết tiềm năng của chúng bằng cách hiểu trường hợp sử dụng và yêu cầu. Cú pháp và ngữ nghĩa khác nhau giữa các gói và điều cần thiết là phải hiểu những thách thức và lợi thế của các thư viện khác nhau. Hình dung vui vẻ

Aishwarya A

Nhà khoa học dữ liệu và người đam mê phân tích

Phương tiện hiển thị trong bài viết này không thuộc sở hữu của Analytics Vidhya và được sử dụng theo quyết định của Tác giả

Python được sử dụng như thế nào trong trực quan hóa dữ liệu?

Matplotlib và Seaborn là các thư viện python được sử dụng để trực quan hóa dữ liệu . Họ có các mô-đun sẵn có để vẽ các biểu đồ khác nhau. Trong khi Matplotlib được sử dụng để nhúng biểu đồ vào ứng dụng, Seaborn chủ yếu được sử dụng cho biểu đồ thống kê.

Python có tốt cho việc trực quan hóa dữ liệu không?

Python ngày nay là một trong những ngôn ngữ phổ biến đơn giản phổ biến nhất để trực quan hóa dữ liệu và hơn thế nữa. Nó thường là lựa chọn tốt nhất để giải quyết các vấn đề trong Học máy, Học sâu, Trí tuệ nhân tạo, v.v. Nó hướng đối tượng, dễ sử dụng và thân thiện với nhà phát triển do mã dễ đọc của nó

Công cụ trực quan hóa dữ liệu tốt nhất trong Python là gì?

Thư viện Python phổ biến nhất để trực quan hóa dữ liệu .
Matplotlib. Matplotlib là một trong những thư viện trực quan hóa dữ liệu python tốt nhất để tạo trực quan hóa mạnh mẽ nhưng đơn giản. .
âm mưu. .
sinh ra biển. .
GGplot. .
bàn thờ. .
Bokeh. .
Pygal. .
Geoplotlib

Ví dụ tốt nhất về trực quan hóa dữ liệu là gì?

Các ví dụ trực quan hóa dữ liệu tốt nhất .
Các ví dụ trực quan hóa dữ liệu tốt nhất. Bản đồ tháng 3 của Napoléon. .
Bản đồ bùng phát dịch tả năm 1854 trên đường Broad. Trực quan hóa bằng. John Tuyết. .
Nguyên nhân tử vong trong Chiến tranh Krym. .
Biểu đồ lịch sử mới. .
Ngân sách chính phủ tương tác. .
Sau Ba-by-lôn. .
Hoa Kỳ tiếp theo. .
Đối thoại phim [chia theo giới tính]

Chủ Đề