Python錯題集-4:NameError:(變量名錯誤)

1問題描述

Traceback (most recent call last):
? File "D:\pycharm\projects\1-可視化學習\8.3更改小提琴圖的中位數、均值、顏色等.py", line 8, in <module>
? ? violin_parts = plt.violinplot(data, showmedians=True, showmeans=True)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ^^^^
NameError: name 'data' is not defined

2代碼詳情

# 導入相關庫
import numpy as np  # 導入numpy庫,用于處理數組和數值計算
import matplotlib.pyplot as plt  # 導入matplotlib的繪圖模塊,用于可視化plt.figure(dpi=120)
# 繪制小提琴圖,data是數據源,showmedians和showmeans參數分別控制是否顯示中位數和均值線
violin_parts = plt.violinplot(data, showmedians=True, showmeans=True)
# 獲取小提琴圖的中位數線,并設置其邊緣顏色為紅色
vmedian = violin_parts['cmedians']
vmedian.set_edgecolor('r')
# 獲取小提琴圖的均值線,并設置其邊緣顏色為黑色
vmean = violin_parts['cmeans']
vmean.set_edgecolor('k')
# 獲取小提琴圖的箱體部分(即除去尾部的曲線部分),并設置其邊緣顏色為黑色
vbars = violin_parts['cbars']
vbars.set_edgecolor('k')
# 獲取小提琴圖的最大值線(即箱體上邊緣),并設置其邊緣顏色為深橙色
vmax = violin_parts['cmaxes']
vmax.set_edgecolor('darkorange')
# 獲取小提琴圖的最小值線(即箱體下邊緣),并設置其邊緣顏色為深橙色
vmin = violin_parts['cmins']
vmin.set_edgecolor('darkorange')
# 顯示圖形窗口,此時會彈出一個窗口顯示繪制的小提琴圖
plt.show()

3問題剖析

NameError?在 Python 中是一個異常類型,它表示嘗試訪問一個未被定義或不可訪問的變量名。當 Python 解釋器在嘗試查找一個變量或函數名時,如果在當前的符號表(即名稱空間)中找不到這個名字,就會拋出?NameError?異常。

1.變量未定義:如果你嘗試使用一個尚未被賦值的變量,就會觸發?NameError

print(x)  # NameError: name 'x' is not defined

2.拼寫錯誤:如果你嘗試訪問的變量名拼寫錯誤,也會導致?NameError

y = 10  
print(y1)  # NameError: name 'y1' is not defined

3.作用域問題:如果變量在嘗試訪問它的作用域之外定義,也會引發?NameError

def func():  z = 20  func()  
print(z)  # NameError: name 'z' is not defined

4.導入錯誤:當嘗試從模塊中導入不存在的對象時,也會引發?NameError

from some_module import non_existent_object  
# NameError: name 'non_existent_object' is not defined in module 'some_module'

4問題解決

  • 確保變量在使用前已經被定義和賦值。
  • 檢查變量名的拼寫是否正確。
  • 確保你正在訪問的變量在當前的作用域內是可訪問的。
  • 如果從模塊導入,請確保模塊中確實存在你想導入的對象。

5代碼修改

通過檢查,屬于變量未定義

data = [np.random.normal(0, std, 100) for std in range(10, 14)]

5全文代碼

# 導入相關庫
import numpy as np  # 導入numpy庫,用于處理數組和數值計算
import matplotlib.pyplot as plt  # 導入matplotlib的繪圖模塊,用于可視化data = [np.random.normal(0, std, 100) for std in range(10, 14)]
plt.figure(dpi=120)
# 繪制小提琴圖,data是數據源,showmedians和showmeans參數分別控制是否顯示中位數和均值線
violin_parts = plt.violinplot(data, showmedians=True, showmeans=True)
# 獲取小提琴圖的中位數線,并設置其邊緣顏色為紅色
vmedian = violin_parts['cmedians']
vmedian.set_edgecolor('r')
# 獲取小提琴圖的均值線,并設置其邊緣顏色為黑色
vmean = violin_parts['cmeans']
vmean.set_edgecolor('k')
# 獲取小提琴圖的箱體部分(即除去尾部的曲線部分),并設置其邊緣顏色為黑色
vbars = violin_parts['cbars']
vbars.set_edgecolor('k')
# 獲取小提琴圖的最大值線(即箱體上邊緣),并設置其邊緣顏色為深橙色
vmax = violin_parts['cmaxes']
vmax.set_edgecolor('darkorange')
# 獲取小提琴圖的最小值線(即箱體下邊緣),并設置其邊緣顏色為深橙色
vmin = violin_parts['cmins']
vmin.set_edgecolor('darkorange')
# 顯示圖形窗口,此時會彈出一個窗口顯示繪制的小提琴圖
plt.show()

圖像顯示為:?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/715191.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/715191.shtml
英文地址,請注明出處:http://en.pswp.cn/news/715191.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

代碼隨想錄算法訓練營第四十四天 完全背包 、零錢兌換 II 、組合總和 Ⅳ

代碼隨想錄算法訓練營第四十四天 | 完全背包 、零錢兌換 II 、組合總和 Ⅳ 完全背包 題目鏈接&#xff1a;題目頁面 (kamacoder.com) 解釋一、01背包 一維 &#xff1a;為什么要倒序遍歷背包&#xff1f; 首先要明白二維數組的遞推過程&#xff0c;然后才能看懂二維變一維的…

【MATLAB源碼-第150期】基于matlab的開普勒優化算法(KOA)機器人柵格路徑規劃,輸出做短路徑圖和適應度曲線。

操作環境&#xff1a; MATLAB 2022a 1、算法描述 開普勒優化算法&#xff08;Kepler Optimization Algorithm, KOA&#xff09;是一個虛構的、靈感來自天文學的優化算法&#xff0c;它借鑒了開普勒行星運動定律的概念來設計。在這個構想中&#xff0c;算法模仿行星圍繞太陽的…

項目風險:測試大佬結合實例告訴你如何應對!

項目有風險 今天下午15點&#xff0c;團隊成員D向他的主管Z反饋他測試的項目有風險&#xff1a;項目在測試周期內&#xff0c;但在用例評審時發現有一處功能邏輯有爭議&#xff0c;需要產品經理跟業務方確認&#xff0c;可能出現的情況有&#xff1a; 1 不變更需求&#xff0…

【技巧】SpringCloud Gateway實現多子域(單個應用開放多個端口)

0. 目錄 1. 需求背景2. 實現3. 額外 - 其它Servlet容器實現3.1 Undertow3.2 Tomcat 4. 相關 1. 需求背景 瀏覽器針對單個網站地址(ipport)存在“6個請求”限制&#xff1b;通過多子域配置可以突破這個限制&#xff0c;增加網站的響應效率&#xff0c;尤其是針對三維服務這類大…

【深入了解設計模式】組合設計模式

組合設計模式 組合模式是一種結構型設計模式&#xff0c;它允許你將對象組合成樹狀結構來表現“整體-部分”關系。組合模式使得客戶端可以統一對待單個對象和組合對象&#xff0c;從而使得代碼更加靈活和易于擴展。 概述 ? 對于這個圖片肯定會非常熟悉&#xff0c;上圖我們可…

Carla自動駕駛仿真九:車輛變道路徑規劃

文章目錄 前言一、關鍵函數二、完整代碼效果 前言 本文介紹一種在carla中比較簡單的變道路徑規劃方法&#xff0c;主要核心是調用carla的GlobalRoutePlanner模塊和PID控制模塊實現變道&#xff0c;大體的框架如下圖所示。 一、關鍵函數 1、get_spawn_point(),該函數根據指定r…

c語言字符串函數之strcpy函數,strnpy函數

strcpy函數 語法格式 strcpy(字符數組1,字符串2&#xff09; 它的作用是把字符串2復制到字符數組1里面 #include<stdio.h> #include<string.h> int main() {char c[]"河南";char d[]"安徽";char d[];printf("%s\n",strcpy(c,d));…

力扣hot100題解(python版41-43題)

41、二叉樹的層序遍歷 給你二叉樹的根節點 root &#xff0c;返回其節點值的 層序遍歷 。 &#xff08;即逐層地&#xff0c;從左到右訪問所有節點&#xff09;。 示例 1&#xff1a; 輸入&#xff1a;root [3,9,20,null,null,15,7] 輸出&#xff1a;[[3],[9,20],[15,7]]示例…

【C語言結構體】用戶自定義類型--結構體,結構體傳參,位段,聯合體和枚舉【圖文詳解】

歡迎來CILMY23的博客喔&#xff0c;本篇為【C語言結構體】用戶自定義類型--結構體&#xff0c;結構體傳參&#xff0c;位段&#xff0c;聯合體和枚舉【圖文詳解】&#xff0c;感謝觀看&#xff0c;支持的可以給個一鍵三連&#xff0c;點贊關注收藏。 前言 上一篇&#xff08;ht…

GO—函數

Go 語言支持普通函數、匿名函數和閉包&#xff0c;從設計上對函數進行了優化和改進&#xff0c;讓函數使用起來更加方便。 Go 語言的函數屬于“一等公民”&#xff08;first-class&#xff09;&#xff0c;也就是說&#xff1a; 函數本身可以作為值進行傳遞。支持匿名函數和閉…

Leetcode.2369 檢查數組是否存在有效劃分

題目鏈接 Leetcode.2369 檢查數組是否存在有效劃分 rating : 1780 題目描述 給你一個下標從 0 0 0 開始的整數數組 n u m s nums nums &#xff0c;你必須將數組劃分為一個或多個 連續 子數組。 如果獲得的這些子數組中每個都能滿足下述條件 之一 &#xff0c;則可以稱其為…

推薦6款SSH遠程連接工具

1、Xshell 介紹&#xff1a; xshell是一個非常強大的安全終端模擬軟件&#xff0c;它支持SSH1, SSH2, 以及Windows平臺的TELNET 協議。Xshell可以在Windows界面下用來訪問遠端不同系統下的服務器&#xff0c;從而比較好的達到遠程控制終端的目的。 業界最強大的SSH客戶機 官…

數據分析-Pandas數據的直方圖探查

數據分析-Pandas數據的直方圖探查 數據分析和處理中&#xff0c;難免會遇到各種數據&#xff0c;那么數據呈現怎樣的規律呢&#xff1f;不管金融數據&#xff0c;風控數據&#xff0c;營銷數據等等&#xff0c;莫不如此。如何通過圖示展示數據的規律&#xff1f; 數據表&…

農產品質量追溯系統—功能介紹(2)

儲藏管理 儲藏信息管理對需要儲藏的農產品,記錄儲藏的相關信息,如儲藏開始時間、存放倉庫、操作人員、儲藏原因等; 倉庫信息管理物流管理 物流公司管理對相關的物流公司信息進行登記,以便于管理和追溯; 車輛管理

我的秋招數據分析崗面經分享(京東,美團,阿里,拼多多,vivo,滴滴)

節前&#xff0c;我們社群組織了一場技術&面試討論會&#xff0c;邀請了一些互聯網大廠同學、參加社招和校招面試的同學&#xff0c;針對新手如何入門數據分析、機器學習算法、該如何備戰面試、面試常考點分享等熱門話題進行了深入的討論。 基于社群的討論&#xff0c;今天…

力扣爆刷第84天之hot100五連刷6-10

力扣爆刷第84天之hot100五連刷6-10 文章目錄 力扣爆刷第84天之hot100五連刷6-10一、15. 三數之和二、42. 接雨水三、3. 無重復字符的最長子串四、438. 找到字符串中所有字母異位詞五、560. 和為 K 的子數組 一、15. 三數之和 題目鏈接&#xff1a;https://leetcode.cn/problem…

JAVA學習筆記13(位運算)

1.位運算 1.1 原碼、反碼、補碼 ? *規則&#xff1a; ? 1.二進制的最高位是符號位&#xff1a;0表示正數&#xff0c;1表示負數 ? 2.正數的原碼&#xff0c;反碼&#xff0c;補碼都一樣&#xff08;三碼合一&#xff09; ? 3.負數的反碼 他的原碼符號位不變&#xff…

從metashape導出深度圖,從深度圖恢復密集點云

從metashape導出深度圖&#xff0c;從深度圖恢復密集點云 1.從metashape導出深度圖 參考&#xff1a;https://blog.csdn.net/WHU_StudentZhong/article/details/123107072?spm1001.2014.3001.5502 2.從深度圖建立密集點云 首先從metashape導出blockExchange格式的xml文件&…

OpenHarmony、HarmonyOS打開編輯 PDF 等操作的三方組件使用教程

項目場景: 隨著數字化時代的發展,PDF 文檔成為廣泛應用于各行業的重要文件格式。為了提高OpenHarmony/HarmonyOS生態系統的功能性和用戶體驗,我們需要一款支持打開、編輯PDF文件的應用程序。 使用戶能夠輕松打開、瀏覽和編輯PDF文件。該應用將充分利用OpenHarmony/HarmonyO…

【NTN 衛星通信】衛星和無人機配合的應用場景

1 場景概述 衛星接入網是一種有潛力的技術&#xff0c;可以為地面覆蓋差地區的用戶提供無處不在的網絡服務。然而&#xff0c;衛星覆蓋范圍對于位于考古或采礦地點內部/被茂密森林覆蓋的村莊/山谷/靠近山丘或大型建筑物的用戶可能很稀疏。因此&#xff0c;涉及衛星接入和無人駕…