假設我有一個繪圖函數需要一個座標軸參數(或返回一個)。是否有一些低級方法來轉置整個繪圖,以便x軸變成y軸,反之亦然?甚至是繪圖之前的座標軸,以便繪圖功能通過依靠座標軸功能正確執行所有操作(標記)?python matplotlib:轉置座標軸的方法
我知道如何做到這一點「手動」,但我想知道是否有一個稍微隱藏的抽象層次,允許這種轉變。
假設我有一個繪圖函數需要一個座標軸參數(或返回一個)。是否有一些低級方法來轉置整個繪圖,以便x軸變成y軸,反之亦然?甚至是繪圖之前的座標軸,以便繪圖功能通過依靠座標軸功能正確執行所有操作(標記)?python matplotlib:轉置座標軸的方法
我知道如何做到這一點「手動」,但我想知道是否有一個稍微隱藏的抽象層次,允許這種轉變。
一個old post(大約2005年)到John Hunter的郵件列表。我懷疑,這是一個足夠稀缺的慾望和棘手的事情,因此它沒有增加意義。
約翰·亨特的用於在現有情節換軸的例子是
line2d = plot(rand(10))[0]
def swap(xdata, ydata):
line2d.set_xdata(ydata)
line2d.set_ydata(xdata)
draw()
swap(line2d.get_xdata(), line2d.get_ydata())
不低於tcaswell的回答一包多。
def swap(*line_list):
"""
Example
-------
line = plot(linspace(0, 2, 10), rand(10))
swap(line)
"""
for lines in line_list:
try:
iter(lines)
except:
lines = [lines]
for line in lines:
xdata, ydata = line.get_xdata(), line.get_ydata()
line.set_xdata(ydata)
line.set_ydata(xdata)
line.axes.autoscale_view()
一個例子
line = plot(linspace(0, 2, 10), rand(10))
swap(line)
你有你的軸線什麼樣的藝術家? – tacaswell
好問題,我想我可能是特定的,並提到我正在考慮連接到pandas Series(和DataFrame)對象(通過dataframe.plot()...)的gfx繪圖函數。如果您不熟悉panadas繪圖函數,我會回顧一下代碼並稍後嘗試獲取更具體的信息。 – mathtick
讓我擔心的是,有太多的小零件需要單獨切換,任何解決方案最終都會變得非常脆弱。 – tacaswell