Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Projek Percuma: Gunakan ChatGPT untuk Plot dengan Python dan Matplotlib

Projek Percuma: Gunakan ChatGPT untuk Plot dengan Python dan Matplotlib

王林
王林asal
2024-08-31 06:02:06855semak imbas

Free Project: Use ChatGPT to Plot with Python and Matplotlib

Ingin belajar membuat plot dalam Python? ChatGPT akan membantu anda.

Projek ini meminta ChatGPT untuk mengajar anda cara menjana kod Python untuk mencipta plot dan visualisasi. Hanya berikan penerangan ringkas tentang plot yang anda ingin buat dan ChatGPT akan menjana kod yang diperlukan menggunakan perpustakaan Matplotlib yang popular. Alat ini membolehkan pengguna yang tidak mempunyai pengalaman pengaturcaraan untuk membangunkan plot gred profesional untuk data mereka. Sama ada anda seorang penyelidik, saintis data atau pelajar, ChatGPT memudahkan anda membuat plot yang cantik dan bermaklumat dalam Python. (Dihasilkan oleh ChatGPT dengan perubahan kecil).

Projek dalam JupyterNotebook tersedia percuma dalam Kelas Kognitif.


1. Mari kita tanya tentang bidang minat khusus kita yang ingin kita pelajari.

Bertanya :”ajar saya cara membuat plot dalam python”
Hasilnya:
Terdapat banyak cara untuk memplot data dalam Python. Berikut ialah contoh mudah menggunakan Matplotlib, perpustakaan visualisasi data yang popular dalam Python:

# using the provided by chatGPT to run in the notebook
import matplotlib.pyplot as plt
# Sample data
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]
# Create a figure and an axes
fig, ax = plt.subplots()
# Plot the data
ax.plot(x, y)
# Add a title
ax.set_title('My Plot')
# Show the plot
plt.show()

Free Project: Use ChatGPT to Plot with Python and Matplotlib

Ini akan mencipta plot garisan mudah bagi data dalam x dan y. Terdapat banyak pilihan dan pilihan penyesuaian yang tersedia untuk membuat plot dalam Matplotlib. Contohnya, anda boleh menukar rupa garisan, menukar label paksi, menambah legenda, dsb.

Berikut ialah beberapa maklumat lanjut tentang Matplotlib dan perpustakaan perancangan lain dalam Python:
Dokumentasi Matplotlib: https://matplotlib.org/stable/index.html
Tutorial tentang Matplotlib: https://matplotlib.org/stable/tutorials/index.html
Seaborn, perpustakaan visualisasi data berdasarkan Matplotlib: https://seaborn.pydata.org/
Plotly, perpustakaan untuk mencipta plot interaktif: https://plotly.com/python/

Seperti yang anda lihat, ChatGPT menyediakan teks pengenalan dan blok kod (dengan ikon salin untuk kemudahan), dan mengakhiri perbualan dengan maklumat berguna tambahan.

2. Anda boleh bertanya soalan susulan

Dengan hanya bertanya “tunjukkan saya lebih banyak contoh plot dalam python”. Malah, chatGPT mengingati perbualan anda sebelum ini.
Hasilnya:
Berikut ialah beberapa lagi contoh plot yang anda boleh buat dalam Python menggunakan perpustakaan Matplotlib: Plot taburan

import matplotlib.pyplot as plt

# Sample data
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]

# Create a figure and an axes
fig, ax = plt.subplots()

# Plot the data
ax.scatter(x, y)

# Add a title
ax.set_title('My Scatter Plot')

# Show the plot
plt.show()

Free Project: Use ChatGPT to Plot with Python and Matplotlib

Plot palang

import matplotlib.pyplot as plt

# Sample data
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]

# Create a figure and an axes
fig, ax = plt.subplots()

# Plot the data
ax.bar(x, y)

# Add a title
ax.set_title('My Bar Plot')

# Show the plot
plt.show()

Free Project: Use ChatGPT to Plot with Python and Matplotlib

Carta pai

import matplotlib.pyplot as plt

# Sample data
labels = ['Apples', 'Bananas', 'Oranges']
sizes = [30, 45, 25]

# Create a figure and an axes
fig, ax = plt.subplots()

# Plot the data
ax.pie(sizes, labels=labels)

# Add a title
ax.set_title('My Pie Chart')

# Show the plot
plt.show()

Free Project: Use ChatGPT to Plot with Python and Matplotlib

Perlu diingat bahawa ini hanyalah beberapa contoh, dan terdapat banyak jenis plot lain yang boleh anda buat dalam Python menggunakan Matplotlib. Anda boleh mendapatkan lebih banyak maklumat dan contoh dalam dokumentasi Matplotlib: https://matplotlib.org/stable/index.html.

Mari kita plot daripada set data sampel

3. Cadangkan beberapa set data sampel

Peringkat awal yang anda perlukan untuk memuatkan data. Kami boleh meminta ChatGPT mencadangkan beberapa set data sampel dengan bertanya “Bolehkah anda beritahu saya sampel set data untuk pemula dalam python?”
Hasilnya:
Pasti! Berikut ialah beberapa set data yang mungkin berguna untuk pemula dalam Python:

Dataset Iris: Ini ialah set data kecil yang mengandungi maklumat tentang spesies bunga iris yang berbeza, termasuk panjang dan lebar sepal dan kelopak. Ia sering digunakan sebagai set data pemula untuk mempelajari pembelajaran mesin dan teknik analisis data. Anda boleh memuatkan set data Iris dalam Python menggunakan modul sklearn.datasets.

Dataset Perumahan Boston: Set data ini mengandungi maklumat tentang harga perumahan di kawasan Boston, termasuk nilai median rumah, kadar jenayah dan faktor lain. Ia sering digunakan sebagai set data pemula untuk mempelajari teknik regresi. Anda boleh memuatkan dataset Boston Housing dalam Python menggunakan modul sklearn.datasets.

Dataset MNIST: Ini ialah set data digit tulisan tangan, dengan 60,000 contoh latihan dan 10,000 contoh ujian. Ia sering digunakan sebagai set data pemula untuk mempelajari teknik pengelasan imej. Anda boleh memuatkan set data MNIST dalam Python menggunakan modul keras.datasets.

From these suggested datasets, we select Iris dataset to continue to work with as a sample.

3.1. Load the iris dataset as a sample to work wit

h

We need a proper sample in tabular format, so we asked “load iris data with table looking format”
The result:

To load the Iris dataset in a table-like format in Python, you can use the Pandas library. Here is an example of how you can load the Iris dataset and display it in a table-like format:

import pandas as pd
from sklearn import datasets

# Load the Iris dataset
iris = datasets.load_iris()

# Create a DataFrame with the features and target values
df = pd.DataFrame(iris.data, columns=iris.feature_names)
df['target'] = iris.target

# Display the DataFrame
print(df)
#--> or we can call the dataset to displace it
df

Free Project: Use ChatGPT to Plot with Python and Matplotlib

_This will create a Pandas DataFrame with the features (sepal length, sepal width, petal length, and petal width) of the Iris dataset as columns, and the target values (the species of iris) as an additional column.

You can then use the usual Pandas functions to manipulate and analyze the data in the DataFrame. For example, you can use the head() function to display the first few rows of the DataFrame, or use the describe() function to get summary statistics for the numerical columns._

4. Plot the dataset

Conveniently, we can ask follow-up questions; here we asked “plot it”
The result:

To plot the Iris dataset using Matplotlib, you can use the following code:

# --> Trying of the suggestions from ChatGPT
# --> we removed the redundant lines (e.g. loading libraries and importing data) from the suggestion

# Create a figure and an axes
fig, ax = plt.subplots()

# Plot the data, coloring the points by the target values
scatter = ax.scatter(df['sepal length (cm)'], df['sepal width (cm)'], c=df['target'])

# Add a legend
legend = ax.legend(*scatter.legend_elements(), title='Species')

# Add a title
ax.set_title('Iris dataset')

# Show the plot
plt.show()

Free Project: Use ChatGPT to Plot with Python and Matplotlib

4.1. Plot-specific column

We select and ask to plot a specific column in the dataset. For example, asking “show me the distribution of the column ‘sepal length (cm)”
The result:

To show the distribution of a column in a Pandas DataFrame, you can use the hist() function of the DataFrame. For example, to show the distribution of the ‘sepal length (cm)’ column in the Iris dataset, you can use the following code:

# Create a figure and an axes
fig, ax = plt.subplots()

# Plot the distribution of the 'sepal length (cm)' column
df['sepal length (cm)'].hist(ax=ax)

# Add a title
ax.set_title('Distribution of sepal length')

# Show the plot
plt.show()

Free Project: Use ChatGPT to Plot with Python and Matplotlib

As you may notice, the plot does not have labels. Therefore, we can **ask “redo it with proper axis labels”.
The result:
**

# Create a figure and an axes
fig, ax = plt.subplots()

# Plot the distribution of the 'sepal length (cm)' column
df['sepal length (cm)'].hist(ax=ax)

# Add axis labels
ax.set_xlabel('Sepal length (cm)')
ax.set_ylabel('Frequency')

# Add a title
ax.set_title('Distribution of sepal length')

# Show the plot
plt.show()

Free Project: Use ChatGPT to Plot with Python and Matplotlib

4.2. More complex plot

Another useful plot to show the distribution is using boxplot which enables us to visualize standard deviation and identify outliers.

Here we ask for a boxplot of all the columns showing in the single plot by asking “show me boxplot of distributions of all columns in same plot”.
The result:

To show the distribution of all columns in a Pandas DataFrame as boxplots on the same plot, you can use the boxplot() function of the DataFrame.

For example, to show the distributions of all columns in the Iris dataset as boxplots, you can use the following code:

import matplotlib.pyplot as plt
import pandas as pd
from sklearn import datasets

# Load the Iris dataset
iris = datasets.load_iris()

# Create a DataFrame with the features
df = pd.DataFrame(iris.data, columns=iris.feature_names)

# Add a column with the target values
df['target'] = iris.target

# Create a figure and an axes
fig, ax = plt.subplots()

# Plot the boxplots of all columns
df.boxplot(ax=ax)

# Add a title
ax.set_title('Distributions of all columns')

# Show the plot
plt.show()

Free Project: Use ChatGPT to Plot with Python and Matplotlib

5. Using chatGPT for your own project

ChatGPT is an excellent tool for working on your project. It is important to frame the question in a way that addresses your problem. Keep in mind that dividing your project into smaller blocks and addressing them individually is the key to addressing the project.

To ask a programming question from ChatGPT, you can simply provide a clear and concise description of your problem, along with any relevant code or error messages. You should also specify the programming language and any libraries or frameworks that you are using.

5.1. How to properly formulate a question (aka. prompt) for ChatGPT

So, let's ask ChatGPT what it thinks.

When formulating a prompt for ChatGPT, it’s important to keep a few things in mind in order to get the most out of the model:
Be specific and clear about what you want the model to do. For example, instead of asking “What do you know about this topic?”, ask “Can you provide a brief overview of the history of the topic?”

Provide context if necessary. If you’re asking a question about a specific event or person, give some background information so that the model can understand the context in which you’re asking the question.

Ringkas. Gesaan yang panjang dan kompleks mungkin sukar difahami oleh model dan mungkin menghasilkan respons yang kurang tepat atau berkaitan.

Elakkan menggunakan bahasa atau jargon yang terlalu teknikal yang model mungkin tidak biasa.

Elakkan bertanya berbilang soalan dalam satu gesaan, lebih baik bertanya satu soalan pada satu masa.

Berikut ialah beberapa contoh gesaan yang baik untuk ChatGPT:
“Bolehkah anda menerangkan perbezaan utama antara pembelajaran diselia dan tidak diselia?”

“Apakah komponen utama rangkaian saraf dan bagaimana ia berfungsi?”

“Sila tulis cerita pendek tentang robot yang boleh membaca fikiran”

Sebaliknya, beberapa contoh gesaan yang lemah ialah:

“semuanya”
“Apa yang boleh awak beritahu saya?”
“apa yang anda tahu”

Dengan mengikuti garis panduan ini, anda boleh membantu memastikan anda mendapat respons yang paling tepat dan relevan daripada model apabila menggunakan ChatGPT.

5.2. Perlu diingat sebagai saintis data

SembangGPT tidak sempurna; contoh yang diberikan adalah daripada sklearn. Di dunia nyata, anda perlu memuatkan data anda sendiri daripada sumber anda, menggunakan Pandas (contoh di bawah menunjukkan pemuatan iris daripada storan setempat).

Secara amnya, sebagai ahli sains data yang mengamalkan, anda akan kerap menghadapi proses pengumpulan data, penyediaan, pembinaan model dan tafsiran yang pelbagai rupa. Peringkat ini setiap satu mempunyai keperluan unik mereka sendiri dari segi kemahiran dan sumber. Sebagai contoh, anda boleh menggunakan panda untuk memuatkan dan memanipulasi set data anda. Penting untuk diingat bahawa contoh yang disediakan oleh ChatGPT bertujuan untuk berfungsi sebagai bantuan pembelajaran asas dan mungkin tidak sesuai untuk mengendalikan set data yang lebih kompleks atau banyak.

5.3. Jangan panik sembang GPT tidak akan menggantikan saintis data (belum!)

Jadi, mari kita tanya ChatGPT pendapatnya.

Terdapat beberapa sebab mengapa ChatGPT dan model bahasa besar lain tidak akan menggantikan saintis data:

Saintis data mempunyai set kemahiran yang lebih luas: Saintis data dilatih dalam pelbagai kemahiran, termasuk analisis data, pembelajaran mesin, pengaturcaraan, statistik dan banyak lagi. ChatGPT dan model bahasa besar lain hanya mampu menjana teks berdasarkan gesaan yang diberikan dan mereka tidak mempunyai kemahiran lain yang dimiliki oleh saintis data.

Saintis data boleh mentafsir dan menerangkan hasil kerja mereka: Saintis data dilatih untuk mentafsir dan menerangkan hasil kerja mereka, yang penting untuk membuat keputusan dan komunikasi dengan pihak berkepentingan. ChatGPT dan model bahasa besar lain tidak mampu mentafsir atau menerangkan hasil kerja mereka.

Saintis data boleh bekerja dengan pelbagai data: Saintis data dilatih untuk bekerja dengan pelbagai data, termasuk data berstruktur dan tidak berstruktur, dan mereka boleh menggunakan pelbagai alat dan teknik untuk mengekstrak cerapan daripada data. ChatGPT dan model bahasa besar lain hanya mampu menjana teks berdasarkan gesaan yang diberikan dan ia tidak dapat berfungsi dengan jenis data lain.

Saintis data boleh bekerja dengan pelbagai pihak berkepentingan: Saintis data dilatih untuk bekerja dengan pelbagai pihak berkepentingan, termasuk pemimpin perniagaan, pakar perkara dan pakar teknikal, dan mereka boleh menyampaikan konsep yang kompleks dengan jelas dan mudah difahami cara. ChatGPT dan model bahasa besar lain tidak dapat bekerjasama dengan pihak berkepentingan atau menyampaikan konsep yang rumit.

Lihat projek berpandu mesra pemula ini + kursus percuma lain yang dibangunkan oleh pembangun IBM dan saintis data di https://cognitiveclass.ai/

Sehingga lain kali!

Atas ialah kandungan terperinci Projek Percuma: Gunakan ChatGPT untuk Plot dengan Python dan Matplotlib. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn