❶ python作圖程序
實戰小程序:畫出y=x^3的散點圖
樣例代碼如下:
[python]view plain
#coding=utf-8
importpylabasy#引入pylab模塊
x=y.np.linspace(-10,10,100)#設置x橫坐標范圍和點數
y.plot(x,x*x*x,'or')#生成圖像
ax=y.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data',0))
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))
ax.set_yticks([-1000,-500,500,1000])
y.xlim(x.min(),x.max())#將橫坐標設置為x的最大值和最小值
y.show()#顯示圖像
[python]view plain
importpylabasy
[python]view plain
y.np.linspace(-10,10,100)
舉例:
[python]view plain
>>>np.linspace(2.0,3.0,num=5)
array([2.,2.25,2.5,2.75,3.])
[python]view plain
y.plot(x,x*x*x,'or')#生成圖像
'r'可設置顏色為紅色,基本上和matlab的操作很像。
[python]view plain
y.xlim(x.min(),x.max())
❷ 用python對txt數據進行繪圖
## 繪制該文件中的數據
## 需要引入pylab庫,裡面用到的函數和MATLAB里的非常類似
def plotData(X, y):
length = len(y)
pylab.figure(1)
pylab.plot(X, y, 'rx')
pylab.xlabel('Population of City in 10,000s')
pylab.ylabel('Profit in $10,000s')
pylab.show()#讓繪制的圖像在屏幕上顯示出來
❸ 怎麼用python實現滑鼠繪圖
首先,你需要用到python的圖形用戶界面的模塊
其次,你需要用到裡面繪制界面和添加滑鼠響應的功能模塊
❹ Python是否可以通過beautifulSoup擴展包進行繪圖可視化操作
bs4是用來提取數據的,可視化的話可以使用matplotlib,pyecharts等庫
❺ java中如何讓使用Python的統計包繪圖
看來是同道。你提到的這個問題很難。
java調用python容易。 java甚至可以直接調用python的類。python調用java更容易了。
不過GUI要想融合,據目前20年的技術來看,只有本土的可以。 比如以前的微軟體ActiveX,不管你是什麼語言開發的都可以在windows下用OLE方式嵌入。
java的制圖功能,因為它的設計理念 ,它是封閉的。也就是說,除非你使用了它本地化的GUI方法,否則就不可能實現。
那麼說,如果我一定要實現怎麼辦呢?只能走很長的彎路。方法還是有幾個的。
方法1:
在java的panel里嵌入一個瀏覽器,然後在瀏覽器里顯示統計圖表。這個真是不要太容易了。 不管是你是python生成的本地圖片,還是直接用javascript生成的圖都可以嵌入進去。美觀不用說
方法2:
繪圖使用開源的,比如plt之類的。不過它被本地化成java版本的。然後用java調用python,再用python產生數據後,通過jython調用java本地化的繪圖工具。
表面上看,這個東西就是沒有價值的,為什麼不直接用java調用繪圖。關鍵在於python本身對於數據處理的優勢太明顯。輕松就可以完成復雜的數據結構處理。所以還是有價值的
方法3:
浮動窗口方式。這個就不說了。如果你的java是固定在窗口特定位置的。這個就容易了。怎麼浮動窗口要根據操作系統而定。
方法4:簡單方案
python生成圖片後,輸出成JPEG或者是PNG或者是GIF,然後讓JAVA顯示這個圖片。這個可能是最最簡單的。
方法5:windows專用,不知道可否使用
僅限於特定場景,在要顯示圖片的地方,顯示一個品紅色的純色圖。然後讓python的圖形輸出轉到directshow之類的API,直接寫顯卡。這樣就可以顯示動畫效果。
❻ 怎麼用python繪圖
你可以使用numpy和matplotlab這兩個庫來實現的你功能。
你的圖可以參考:
http://matplotlib.org/examples/pylab_examples/histogram_percent_demo.html
importmatplotlib
fromnumpy.randomimportrandn
importmatplotlib.pyplotasplt
frommatplotlib.tickerimportFuncFormatter
defto_percent(y,position):
#Ignorethepassedinposition.
#ticklocations.
s=str(100*y)
#
ifmatplotlib.rcParams['text.usetex']==True:
returns+r'$\%$'
else:
returns+'%'
x=randn(5000)
#Makeanormedhistogram.It'llbemultipliedby100later.
plt.hist(x,bins=50,normed=True)
#_percent.Thismultipliesallthe
#defaultlabelsby100,makingthemallpercentages
formatter=FuncFormatter(to_percent)
#Settheformatter
plt.gca().yaxis.set_major_formatter(formatter)
plt.show()
最主要的就是x軸和y軸的處理,我按照對數算了一下你提供的數據,好像和這個圖效果不一樣。
如果解決了您的問題請採納!
如果未解決請繼續追問
❼ python中交互方式
# 第一種交互方式
name = input("name:")
age = input("age:")
job = input("job:")
salary = input("salary")
info = '''
---------- info of '''+name+''' -----------
Name:'''+name+'''
Age:'''+age+'''
Job:'''+job+'''
Salary:'''+salary+'''
'''
print(name,age,job,salary)# 第二種交互方式 %s 字元串 %d 整數 %f 浮點數 %.2f 浮點數保留兩位
name = input("name:")
age = input("age:")
age = int(input("age:")) # 強制轉換成int
print(type(age)) # 列印一個變數的數據類型
#print(type(str(age)))# 整型轉換成字元串
job = input("job:")
salary = input("salary:")
info = '''
---------- info of %s -----------
Name:%s
Age:%s
Job:%s
Salary:%s
''' %(name,name,age,job,salary)
print(info)第三種交互方式
name = input("name:")
age = input("age:")
job = input("job:")
salary = input("salary:")
info = '''
---------- info of {_name} -----------
Name:{_name}
Age:{_age}
Job:{_job}
Salary:{_salary}
''' .format(_name=name,
_age=age,
_job=job,
_salary= salary)
print(info)
# 第四種交互方式
name = input("name:")
age = input("age:")
job = input("job:")
salary = input("salary:")
info = '''
---------- info of {0} -----------
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
''' .format(name,age,job,salary)
print(info)
❽ python中PQ5的畫畫事件和vtk中的交互事件沖突了怎麼辦
python中PQ5的畫畫事件和vtk中的交互事件沖突的解決辦法如下
所有從QObject或其子類(例如Qwidget)派生的類都能夠包含信號和槽。當對象改變其狀態時,信號就由該對象發射(emit)出去,這就是對象所要做的全部事情,其不需要知道有沒有人接收它發出去的信息。
槽用於接收信號,但它們是普通的對象成員函數。一個槽並不知道是否有任何信號與自己相連接。而且,對象並不需要了解具體的通信機制。
單個的槽可以和很多信號進行連接,同樣,單個的信號與很多的槽進行連接,甚至於將一個信號與另外一個信號相連接也是可能的,這時無論第一個信號什麼時候發射系統都將立刻發射第二個信號。總之,信號與槽構造了一個強大的部件編程機制。
❾ python怎麼用互動式模式
Python有兩種運行方式:互動式和腳本式。互動式可以通過cmd命令行窗口或者IDEL實現,而腳本式通過寫一個腳本(.py結尾的文檔)實現。其中互動式主要用於簡單的python運行或者測試調試python時用到,而腳本式是運行python程序的主要方法。
下面我們來了解一下Python如何使用互動式運行:
通過Windows命令行工具進行互動式運行python。同時按下Windows鍵和R鍵,啟動「運行」,在「運行」中輸入cmd然後回車,即彈出命令行工具,然後輸入python回車,即出現如下界面。
第二,然後輸入print('Hello world!'),既可以敲一行代碼,與python交互一次,python執行一次。
第三,通過IDEL互動式運行python。從「開始」中找到Python->IDEL,如下圖。
啟動IDEL後,同樣輸入print('Hello world!'),既可以敲一行代碼,與python交互一次,python執行一次。只不過IEDL中python代碼可以高亮顯示。
更多Python相關技術文章,請訪問Python教程欄目進行學習!以上就是小編分享的關於python怎麼用互動式模式的詳細內容希望對大家有所幫助,更多有關python教程請關注環球青藤其它相關文章!
❿ Python實操:手把手教你用Matplotlib把數據畫出來
作者:邁克爾·貝耶勒(Michael Beyeler)
如需轉載請聯系華章 科技
如果已安裝Anaconda Python版本,就已經安裝好了可以使用的 Matplotlib。否則,可能要訪問官網並從中獲取安裝說明:
http://matplotlib.org
正如使用np作為 NumPy 的縮寫,我們將使用一些標準的縮寫來表示 Matplotlib 的引入:
在本書中,plt介面會被頻繁使用。
讓我們創建第一個繪圖。
假設想要畫出正弦函數sin(x)的線性圖。得到函數在x坐標軸上0≤x<10內所有點的值。我們將使用 NumPy 中的 linspace 函數來在x坐標軸上創建一個從0到10的線性空間,以及100個采樣點:
可以使用 NumPy 中的sin函數得到所有x點的值,並通過調用plt中的plot函數把結果畫出來:
你親自嘗試了嗎?發生了什麼嗎?有沒有什麼東西出現?
實際情況是,取決於你在哪裡運行腳本,可能無法看到任何東西。有下面幾種可能性:
1. 從.py腳本中繪圖
如果從一個腳本中運行 Matplotlib,需要加上下面的這行調用:
在腳本末尾調用這個函數,你的繪圖就會出現!
2. 從 IPython shell 中繪圖
這實際上是互動式地執行Matplotlib最方便的方式。為了讓繪圖出現,需要在啟動 IPython 後使用所謂的%matplotlib魔法命令。
接下來,無須每次調用plt.show()函數,所有的繪圖將會自動出現。
3. 從 Jupyter Notebook 中繪圖
如果你是從基於瀏覽器的 Jupyter Notebook 中看這段代碼,需要使用同樣的%matplotlib魔法命令。然而,也可以直接在notebook中嵌入圖形,這會有兩種輸出選項:
在本書中,將會使用inline選項:
現在再次嘗試一下:
上面的命令會得到下面的繪圖輸出結果:
如果想要把繪圖保存下來留作以後使用,可以直接在 IPython 或者 Jupyter Notebook 使用下面的命令保存:
僅需要確保你使用了支持的文件後綴,比如.jpg、.png、.tif、.svg、.eps或者.pdf。
作為本章最後一個測試,讓我們對外部數據集進行可視化,比如scikit-learn中的數字數據集。
為此,需要三個可視化工具:
那麼開始引入這些包吧:
第一步是載入實際數據:
如果沒記錯的話,digits應該有兩個不同的數據域:data域包含了真正的圖像數據,target域包含了圖像的標簽。相對於相信我們的記憶,我們還是應該對digits稍加 探索 。輸入它的名字,添加一個點號,然後按Tab鍵:digits.<TAB>,這個操作將向我們展示digits也包含了一些其他的域,比如一個名為images的域。images和data這兩個域,似乎簡單從形狀上就可以區分。
兩種情況中,第一維對應的都是數據集中的圖像數量。然而,data中所有像素都在一個大的向量中排列,而images保留了各個圖像8×8的空間排列。
因此,如果想要繪制出一副單獨的圖像,使用images將更加合適。首先,使用NumPy的數組切片從數據集中獲取一幅圖像:
這里是從1797個元素的數組中獲取了它的第一行數據,這行數據對應的是8×8=64個像素。下面就可以使用plt中的imshow函數來繪制這幅圖像:
上面的命令得到下面的輸出:
此外,這里也使用cmap參數指定了一個顏色映射。默認情況下,Matplotlib 使用MATLAB默認的顏色映射jet。然而,在灰度圖像的情況下,gray顏色映射更有效。
最後,可以使用plt的subplot函數繪制全部數字的樣例。subplot函數與MATLAB中的函數一樣,需要指定行數、列數以及當前的子繪圖索引(從1開始計算)。我們將使用for 循環在數據集中迭代出前十張圖像,每張圖像都分配到一個單獨的子繪圖中。
這會得到下面的輸出結果:
關於作者:Michael Beyeler,華盛頓大學神經工程和數據科學專業的博士後,主攻仿生視覺計算模型,用以為盲人植入人工視網膜(仿生眼睛),改善盲人的視覺體驗。 他的工作屬於神經科學、計算機工程、計算機視覺和機器學習的交叉領域。同時他也是多個開源項目的積極貢獻者。
本文摘編自《機器學習:使用OpenCV和Python進行智能圖像處理》,經出版方授權發布。