<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # Matplotlib 折線圖 > 原文: [https://pythonbasics.org/matplotlib-line-chart/](https://pythonbasics.org/matplotlib-line-chart/) 折線圖使用 Matplotlib 開箱即用。 折線圖中可以包含多條折線,更改顏色,更改折線類型等等。 Matplotlib 是用于繪圖的 Python 模塊。 折線圖是它可以創建的多種圖表類型之一。 ## 折線圖示例 ### 折線圖 首先導入`matplotlib`和`numpy`,它們對于制圖非常有用。 您可以使用`plot(x, y)`方法創建折線圖。 ```py import matplotlib.pyplot as plt import numpy as np x = np.linspace(-1, 1, 50) print(x) y = 2*x + 1 plt.plot(x, y) plt.show() ``` ![line chart](https://img.kancloud.cn/95/8d/958d849141c655c46b5ae17aa1271b09_640x480.jpg) ### 曲線 `plot()`方法也適用于其他類型的折線圖。 不需要是直線,`y`可以具有任何類型的值。 ```py import matplotlib.pyplot as plt import numpy as np x = np.linspace(-1, 1, 50) y = 2**x + 1 plt.plot(x, y) plt.show() ``` ![curved line chart](https://img.kancloud.cn/b6/97/b6975e462717ccfa7f92a0b90defc706_640x480.jpg) [下載示例](https://gum.co/mpdp) ### 帶有標簽的直線 要知道您在看什么,您需要元數據。 標簽是一種元數據。 它們顯示圖表的內容。 圖表具有`x`標簽,`y`標簽和標題。 ```py import matplotlib.pyplot as plt import numpy as np x = np.linspace(-1, 1, 50) y1 = 2*x + 1 y2 = 2**x + 1 plt.figure() plt.plot(x, y1) plt.xlabel("I am x") plt.ylabel("I am y") plt.title("With Labels") plt.show() ``` ![line chart with plot labels](https://img.kancloud.cn/1d/1d/1d1d548d6133a2a0f0543777fe9c82ca_640x480.jpg) ### 多個直線 繪圖中可以有多條線。 要添加另一行,只需再次調用`plot(x, y)`函數。 在下面的示例中,我們在圖表上繪制了`y(y1, y2)`的兩個不同值。 ```py import matplotlib.pyplot as plt import numpy as np x = np.linspace(-1, 1, 50) y1 = 2*x + 1 y2 = 2**x + 1 plt.figure(num = 3, figsize=(8, 5)) plt.plot(x, y2) plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--' ) plt.show() ``` ![plot multiple lines](https://img.kancloud.cn/25/2d/252da107fcf50e61a09e1c5549d1de52_800x500.jpg) ### 虛線 線可以是點的形式,如下圖所示。 調用`scatter(x, y)`方法而不是調用`plot(x, y)`。`scatter(x, y)`方法還可以用于(隨機)將點繪制到圖表上。 ```py import matplotlib.pyplot as plt import numpy as np n = 1024 X = np.random.normal(0, 1, n) Y = np.random.normal(0, 1, n) T = np.arctan2(X, Y) plt.scatter(np.arange(5), np.arange(5)) plt.xticks(()) plt.yticks(()) plt.show() ``` ![dotted line](https://img.kancloud.cn/fe/c4/fec490caa4bc890f65b976462d335287_640x480.jpg) [下載示例](https://gum.co/mpdp) ### 直線刻度 您可以更改繪圖上的刻度。 將它們設置在`x`軸,`y`軸上,甚至更改其顏色。 這條線可以更粗并且具有`alpha`值。 ```py import matplotlib.pyplot as plt import numpy as np x = np.linspace(-1, 1, 50) y = 2*x - 1 plt.figure(figsize=(12, 8)) plt.plot(x, y, color='r', linewidth=10.0, alpha=0.5) ax = plt.gca() ax.spines['right'].set_color('none') ax.spines['top'].set_color('none') ax.xaxis.set_ticks_position('bottom') ax.yaxis.set_ticks_position('left') ax.spines['bottom'].set_position(('data', 0)) ax.spines['left'].set_position(('data', 0)) for label in ax.get_xticklabels() + ax.get_yticklabels(): label.set_fontsize(12) label.set_bbox(dict(facecolor='y', edgecolor='None', alpha=0.7)) plt.show() ``` ![line ticks](https://img.kancloud.cn/17/f7/17f7c5048ae1af09ed08fae7cf0003ea_1200x646.jpg) ### 漸近線 可以將漸近線添加到該圖。 為此,請使用`plt.annotate()`。 在下面的圖中還有一條虛線。 您可以試一下代碼以查看其工作原理。 ```py import matplotlib.pyplot as plt import numpy as np x = np.linspace(-1, 1, 50) y1 = 2*x + 1 y2 = 2**x + 1 plt.figure(figsize=(12, 8)) plt.plot(x, y2) plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--') ax = plt.gca() ax.spines['right'].set_color('none') ax.spines['top'].set_color('none') ax.xaxis.set_ticks_position('bottom') ax.yaxis.set_ticks_position('left') ax.spines['bottom'].set_position(('data', 0)) ax.spines['left'].set_position(('data', 0)) x0 = 1 y0 = 2*x0 + 1 plt.scatter(x0, y0, s = 66, color = 'b') plt.plot([x0, x0], [y0, 0], 'k-.', lw= 2.5) plt.annotate(r'$2x+1=%s$' % y0, xy=(x0, y0), xycoords='data', xytext=(+30, -30), textcoords='offset points', fontsize=16, arrowprops=dict(arrowstyle='->',connectionstyle='arc3,rad=.2') ) plt.text(0, 3, r'$This\ is\ a\ good\ idea.\ \mu\ \sigma_i\ \alpha_t$', fontdict={'size':16,'color':'r'}) plt.show() ``` ![line asymptote](https://img.kancloud.cn/9a/ab/9aabdb04a4fa81d3c5ea52961ab91af5_1200x646.jpg) ### 帶有文字刻度的直線 不一定是數字刻度。 秤也可以包含文字,例如以下示例。 在`plt.yticks()`中,我們只傳遞一個帶有文本值的列表。 然后將這些值顯示在`y`軸上。 ```py import matplotlib.pyplot as plt import numpy as np x = np.linspace(-1, 1, 50) y1 = 2*x + 1 y2 = 2**x + 1 plt.figure(num = 3, figsize=(8, 5)) plt.plot(x, y2) plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--' ) plt.xlim((-1, 2)) plt.ylim((1, 3)) new_ticks = np.linspace(-1, 2, 5) plt.xticks(new_ticks) plt.yticks([-2, -1.8, -1, 1.22, 3], [r'$really\ bad$', r'$bad$', r'$normal$', r'$good$', r'$readly\ good$']) ax = plt.gca() ax.spines['right'].set_color('none') ax.spines['top'].set_color('none') ax.xaxis.set_ticks_position('bottom') ax.yaxis.set_ticks_position('left') ax.spines['bottom'].set_position(('data', 0)) ax.spines['left'].set_position(('data', 0)) plt.show() ``` ![line with text scale](https://img.kancloud.cn/4e/ec/4eecc1b3b619be6607c382cbb1b4e98c_800x500.jpg)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看