Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

149

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Làm thế nào tôi có thể vẽ biểu đồ 3 chức năng sau (nghĩa là

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
7,
from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
8 và bổ sung), trên miền
from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
9, trong cùng một hình?

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)

a = sin(t)
b = cos(t)
c = a + b

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Srivatsan

8.89911 Huy hiệu vàng54 Huy hiệu bạc82 Huy hiệu đồng11 gold badges54 silver badges82 bronze badges

Đã hỏi ngày 8 tháng 3 năm 2014 lúc 22:48Mar 8, 2014 at 22:48

0

Để vẽ nhiều biểu đồ trên cùng một hình, bạn sẽ phải làm:

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Đã trả lời ngày 8 tháng 3 năm 2014 lúc 22:53Mar 8, 2014 at 22:53

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

SrivatsansrivatsanSrivatsan

8.89911 Huy hiệu vàng54 Huy hiệu bạc82 Huy hiệu đồng11 gold badges54 silver badges82 bronze badges

5

Đã hỏi ngày 8 tháng 3 năm 2014 lúc 22:48

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Để vẽ nhiều biểu đồ trên cùng một hình, bạn sẽ phải làm:Jan 11, 2017 at 6:11

Đã trả lời ngày 8 tháng 3 năm 2014 lúc 22:53Jash Shah

Srivatsansrivatsan4 gold badges20 silver badges38 bronze badges

5

Có lẽ một cách làm như vậy để làm như vậy.

figure()
...
plot(t, a)
plot(t, b)
plot(t, c)

Đã trả lời ngày 11 tháng 1 năm 2017 lúc 6:11

Jash Shahjash Shah27 gold badges104 silver badges188 bronze badges

1.8964 Huy hiệu vàng20 Huy hiệu bạc38 Huy hiệu ĐồngMar 8, 2014 at 22:51

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Chỉ cần sử dụng chức năng

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
0 như sauleeladam

nbro10 silver badges15 bronze badges

1

14.4K27 Huy hiệu vàng104 Huy hiệu bạc188 Huy hiệu đồng

from matplotlib import pyplot as plt
plt.figure()
for item in range(0, 10, 1): 
    plt.plot(fpr[item], tpr[item])
plt.show()

Đã trả lời ngày 8 tháng 3 năm 2014 lúc 22:51Aug 31, 2021 at 13:10

LeeladamleeladamLinh

1.70810 Huy hiệu bạc15 Huy hiệu đồng5 bronze badges

1

Ghi chú

Nhấn vào đây để tải xuống mã ví dụ đầy đủhere to download the full example code

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
1 tạo ra một con số và một lưới các ô con với một cuộc gọi duy nhất, trong khi cung cấp kiểm soát hợp lý về cách tạo các lô riêng lẻ. Đối với các trường hợp sử dụng nâng cao hơn, bạn có thể sử dụng
from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
2 cho bố cục subplot tổng quát hơn hoặc
from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
3 để thêm các ô phụ tại các vị trí tùy ý trong hình.

import matplotlib.pyplot as plt
import numpy as np

# Some example data to display
x = np.linspace(0, 2 * np.pi, 400)
y = np.sin(x ** 2)

Một con số chỉ có một subplot#

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
4 mà không có đối số trả về
from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
5 và một
from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
6.

Đây thực sự là cách đơn giản nhất và được khuyến nghị để tạo một hình và trục duy nhất.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Text(0.5, 1.0, 'A single plot')

Xếp các ô con theo một hướng#

Hai đối số tùy chọn đầu tiên của

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
1 xác định số lượng hàng và cột của lưới phụ.

Khi chỉ xếp theo một hướng,

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
8 đã trả về là một mảng numpy 1D chứa danh sách các trục được tạo.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

[]

Nếu bạn đang tạo chỉ một vài trục, thật tiện lợi khi giải nén chúng ngay lập tức cho các biến chuyên dụng cho mỗi trục. Bằng cách đó, chúng ta có thể sử dụng

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
9 thay vì nhiều hơn
figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
0.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

[]

Để có được các ô phụ bên cạnh, hãy truyền các tham số

figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
1 cho một hàng và hai cột.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

[]

Xếp các ô con theo hai hướng#

Khi xếp chồng theo hai hướng,

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
8 được trả về là một mảng 2D.

Nếu bạn phải đặt các tham số cho mỗi Subplot, nó tiện dụng để lặp lại trên tất cả các ô con trong lưới 2D bằng cách sử dụng

figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
3.

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
0

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Bạn cũng có thể sử dụng Tuple-Unpacking trong 2D để gán tất cả các ô con cho các biến chuyên dụng:

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
1

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Chia sẻ trục#

Theo mặc định, mỗi trục được chia tỷ lệ riêng lẻ. Do đó, nếu các phạm vi khác nhau, các giá trị đánh dấu của các ô con không căn chỉnh.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
2

Bạn có thể sử dụng chia sẻ hoặc chia sẻ để căn chỉnh trục ngang hoặc dọc.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
3

Đặt chia sẻ hoặc chia sẻ thành

figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
4 cho phép chia sẻ toàn cầu trên toàn bộ lưới, tức là các trục y của các ô phụ xếp chồng lên theo chiều dọc có cùng thang điểm khi sử dụng
figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
5.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
4

Đối với các ô phụ đang chia sẻ trục, một bộ nhãn Tick là đủ. Nhãn đánh dấu của các trục bên trong được tự động xóa bởi Sharex và Sharey. Vẫn còn một khoảng trống không sử dụng giữa các ô con.

Để kiểm soát chính xác vị trí của các ô con, người ta có thể tạo rõ ràng

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
2 với
figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
7, sau đó gọi phương thức
figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
8 của nó. Ví dụ, chúng ta có thể giảm chiều cao giữa các ô phụ dọc bằng cách sử dụng
figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
9.

from matplotlib import pyplot as plt
plt.figure()
for item in range(0, 10, 1): 
    plt.plot(fpr[item], tpr[item])
plt.show()
0 là một phương pháp tiện dụng để loại bỏ nhãn và ve từ các ô con không ở rìa của lưới.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Ngoài

figure()
...
plot(t, a)
plot(t, b)
plot(t, c)
4 và
from matplotlib import pyplot as plt
plt.figure()
for item in range(0, 10, 1): 
    plt.plot(fpr[item], tpr[item])
plt.show()
2, cả Sharex và Sharey đều chấp nhận các giá trị 'hàng' và 'col' để chia sẻ các giá trị chỉ trên mỗi hàng hoặc cột.

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
5

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Nếu bạn muốn một cấu trúc chia sẻ phức tạp hơn, trước tiên bạn có thể tạo lưới các trục không chia sẻ, sau đó gọi

from matplotlib import pyplot as plt
plt.figure()
for item in range(0, 10, 1): 
    plt.plot(fpr[item], tpr[item])
plt.show()
3 hoặc
from matplotlib import pyplot as plt
plt.figure()
for item in range(0, 10, 1): 
    plt.plot(fpr[item], tpr[item])
plt.show()
4 để thêm thông tin chia sẻ một posteriori.

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, 'r') # plotting t, a separately 
plt.plot(t, b, 'b') # plotting t, b separately 
plt.plot(t, c, 'g') # plotting t, c separately 
plt.show()
6

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Trục cực#

Tham số subplot_kw của

from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
1 kiểm soát các thuộc tính subplot (xem thêm
from numpy import *
import math
import matplotlib.pyplot as plt

t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b

plt.plot(t, a, t, b, t, c)
plt.show()
3). Cụ thể, điều này có thể được sử dụng để tạo ra một lưới các trục cực.

Hướng dẫn how do you plot two graphs on the same plot in python? - làm thế nào để bạn vẽ hai biểu đồ trên cùng một âm mưu trong python?

Tổng thời gian chạy của tập lệnh: (0 phút 7.774 giây) ( 0 minutes 7.774 seconds)

Phòng trưng bày được tạo ra bởi Sphinx-Gallery

Làm thế nào để bạn vẽ nhiều biểu đồ trên cùng một lô trong Python?

Tạo các điểm dữ liệu X, Y1 và Y2 bằng cách sử dụng Numpy ..
Biểu đồ (X, Y1) và (X, Y2) bằng phương thức PLOT () ..
Nhận các điểm dữ liệu XY của các trục hiện tại ..
Sử dụng argsort () để trả về các chỉ số sẽ sắp xếp một mảng ..
Làm thế nào để bạn vẽ hai biến trên cùng một trục trong Python?
Sử dụng PLT. ....

Làm thế nào để bạn vẽ hai biểu đồ cạnh nhau trong Python?

Làm thế nào để bạn vẽ hai biểu đồ cạnh nhau trong Python ?..
Tạo điểm X, Y1, Y2 bằng cách sử dụng Numpy ..
Với NROW = 1, Ncols = 2, Index = 1, thêm Subplot vào hình hiện tại, sử dụng phương thức Subplot () ..
Vẽ đường bằng cách sử dụng các điểm x và y1, sử dụng phương thức lô () ..
Thiết lập tiêu đề, nhãn cho trục X và Y cho Hình 1, sử dụng PLT ..

Làm thế nào để bạn kết hợp hai biểu đồ trong Python?

Matplotlib với Python..
Đặt kích thước hình và điều chỉnh phần đệm giữa và xung quanh các ô phụ ..
Tạo các điểm dữ liệu X, Y1 và Y2 bằng cách sử dụng Numpy ..
Biểu đồ (X, Y1) và (X, Y2) bằng phương thức PLOT () ..
Nhận các điểm dữ liệu XY của các trục hiện tại ..
Sử dụng argsort () để trả về các chỉ số sẽ sắp xếp một mảng ..

Làm thế nào để bạn vẽ hai biến trên cùng một trục trong Python?

Instructions..
Sử dụng PLT.....
Vẽ biểu đồ biến carbon dioxide trong màu xanh bằng phương pháp biểu đồ trục ..
Sử dụng phương thức Axes Twinx để tạo một trục đôi chia sẻ trục x ..
Vẽ biểu đồ biến nhiệt độ tương đối màu đỏ trên trục đôi bằng phương pháp cốt truyện của nó ..