How to use ChatGPT to create charts and tables
Do you know what floats my boat? Schemes and drawings.
Give me a fine outline to delve into and I shall be unreasonably happy. I love watching the news on election nights, not for the votes to be counted, but for all the cool graphs. I switch channels throughout the evening to see all the possible ways each network finds to deliver digital data.
Is this strange? I don’t think that’s strange.
Also: The moment I realized ChatGPT Plus was a game-changer for my business
As it turns out, ChatGPT does a great job of creating charts and tables. Considering that an omnipresent AI chatbot can bundle so much information into something worth a graph, what ChatGPT gives up in beautiful presentation it more than makes up for in informational value.
Exactly what kind of graph generation tools are available for ChatGPT? There are three ways you can proceed:
- You can create tables (but not graphs) in the free version of ChatGPT
- You can create charts and tables using the Advanced Data Analysis (formerly “Code Interpreter”) add-in in ChatGPT Plus
- You can generate tables with ChatGPT Plus and graphs with random graphs plugins
In this article, I will discuss the first two options, but will skip the third. Although there are a variety of ChatGPT Plus graphing plug-ins, they all take you out of the ChatGPT interface and employ third-party services. They all try to charge you a sale fee so you can use SaaS based charting services. Basically, they are listed in the ChatGPT store as advertisements, not as ready-made functional tools. In addition, they tend to be very unreliable.
NB: What ChatGPT used to call a “code compiler” is now called “advanced data analysis”. So, whenever we used the term Code Interpreter earlier, we will now go to call it Advanced Data Analysis.
Advanced data analysis results in relatively ugly charts. But it rocks. First, let’s discuss where ChatGPT gets its data from, and then we’ll create some tables.
How to use ChatGPT to create charts and tables
We talked earlier about which graphing tools are available and in which versions of ChatGPT. But there is more to it than just planning tools. If you want to use ChatGPT productively, you need to understand what the different versions can do.
ChatGPT free version: This version uses the large GPT-3.5 language model, which is not as efficient as the GPT-4 version. From a data point of view, his view of worldly knowledge expires in September 2021. You paste about 1,500 words of data into a chat dialog, and he is able to process it.
ChatGPT Plus with advanced data analysis: This version uses the GPT-4 large language model. Spreadsheets will be imported in a wide range of file formats. Although it does not set a size limit for the imported data, it can handle fairly large files, but will break if the files exceed an indefinite level of complexity. His view of worldly knowledge ends in September 2021, but you can increase that knowledge by uploading data files.
Also: GPT-3.5 vs GPT-4: Is ChatGPT Plus worth the subscription fee?
ChatGPT with WebPilot plugin: This version also uses GPT-4 LLM. Basically, you can run either advanced data analytics or plug-ins. If you choose to run plugins, the WebPilot plugin is fairly reliable when it comes to web searches (although it does crash on large requests). This means that the worldly knowledge of ChatGPT does not have to end in 2021, but can generally extend to the current date.
ChatGPT Foundation: Advanced data analytics and plug-ins are also available in the newly announced enterprise edition. You can upload files to Enterprise, and they will remain confidential. The organization is also supposed to allow for larger files and larger responses. Pricing is not specified.
Let’s start with an example. In the following demo, we’ll work with the top five most populous cities.
List of the top five cities in the world in terms of population. include country.
I ordered this from ChatGPT’s free version and here’s what I got:
Turning it into a table is simple. Just tell ChatGPT you want a table:
Create a table of the five largest cities in the world by population. include country.
You can manipulate and customize the table by giving more detailed instructions to ChatGPT. Again, with the free version, we’ll add a population field. Of course, this data is old, but it is provided anyway:
Create a table of the five largest cities in the world by population. Include country and population domain
You can also specify certain details about the table, such as the order of fields and units. Here, I move the country first and compress the population numbers.
Create a table of the five largest cities in the world by population. Include country and population domain. Display fields by country, city, population. Displays the population in millions (with one decimal point), so 37,833,000 will be displayed as 37.8 million.
Note that I gave the AI an example of how to display numbers.
This is as far as the free version will take us. From now on, we will move to the $20/mo ChatGPT Plus version.
ChatGPT Plus with advanced data analytics enabled can create line charts, bar charts, graphs, pie charts, scatter charts, heat maps, box charts, area charts, bubble charts, Gantt charts, Pareto charts, network charts, Sankey charts, maps corrective, radar charts, word clouds, tree maps, and 3D charts.
In this example, we’ll create a simple bar chart.
Create a bar chart of the five largest cities in the world by population
A little tool for chatting, right?
One of the great powers of advanced data analytics is the ability to load a dataset. For example, I downloaded a dataset of popular baby names from Data.gov. This is a comma separated file of baby names in New York City from 2011 to 2014. Even though it’s been a decade, they are fun to play with.
The dataset I selected for this article is readily available from a government website, so you can replicate this experiment yourself. There are a lot of great datasets available on Data.gov, but I’ve found many of them to be too large for ChatGPT to use. Once I downloaded this file, I realized that it also includes race information, so we can run a number of different plots from the same dataset.
Also: How to use ChatGPT to build an app
Click the small upload button and then tell it which data file you want to import.
I asked him to show me the first five lines of the file so I would know more about the file’s format.
I was curious how the dataset distributed gender nouns. Here is my first claim:
Create a pie chart showing gender as a percentage of the total data set
Here is the result:
Unfortunately, the dark shade of green makes the numbers difficult to read. Fortunately, you can direct advanced data analytics to use different colors. I made sure to choose colors that don’t reinforce gender stereotypes.
Create a pie chart showing gender as a percentage of the total data set. Use light green for males and medium yellow for females.
As we saw earlier, the data collected includes race. Here’s how to view the distribution of the different races recorded by New York in early 2010:
Show the distribution of ethnicity in the dataset using a pie chart. Use only light colors.
And this is the result. Notice anything?
Apparently, New York did not normalize its data properly. “WHITE NON HISPANIC” and “WHITE NON HISP” were used together, “BLACK NON HISPANIC” and “BLACK NON HISP” together, and “ASIAN AND PACIFIC ISLANDER” and “ASIAN AND PACI” were used together. This has resulted in inaccurate representations of the data.
One of the benefits of ChatGPT is that it remembers instructions throughout the session. So I was able to give her these instructions:
For all of the following orders, group “WHITE NON HISPANIC” and “WHITE NON HISP” together. The collection “BLACK NON HISPANIC” and “BLACK NON HISP” together. Group of “Asian and Pacific Islands” and “ASEAN and Pacific”. Use the longer of the two race names when displaying the race.
He replied:
Let’s try the chart again, using the same prompt.
Show the distribution of ethnicity in the dataset using a pie chart. Use only light colors.
This is better:
You must be diligent when looking at the results. For example, in a request for the best baby names, the AI separated “Madison” and “MADISON” as two different names:
For all of the following orders, baby names must be case insensitive.
Let’s conclude with a complex single-wave schema. Here is our claim:
For each race, provide two pie charts, one for each gender. Each pie chart should list the top five baby names for that gender and that of ethnicity. Use only light colors.
As it turned out, the schema generated text that was too small to read. So, to get a more useful chart, we can export it again. I will select the file format and display the file:
Export this chart as a 3000px wide JPG file.
Here is the result:
Note that Sofia and Sophia are very popular, but they are presented as two different names. But that’s what makes the charts so great.
Instructions
How much does it cost to use advanced data analytics?
Advanced data analytics comes with ChatGPT Plus as an experimental feature that you have to turn on in the settings panel. ChatGPT Plus is $20 per month. Advanced data analytics is also included in the Enterprise edition, but pricing for this has not yet been released.
Does data uploaded to ChatGPT for graphs remain private or is there a risk of data being exposed?
Assume that there is always a risk to privacy.
I asked this ChatGPT and this is what it told me: Data privacy is a priority for ChatGPT. The uploaded data is only used for the purpose of the user’s current session and is not stored long term or used for any other purposes. However, for highly sensitive data, users should always be careful and consider using the enterprise version of ChatGPT, which offers improved data confidentiality.
Also: Generative AI brings new risks to everyone. Here’s how you can stay safe
My recommendation: don’t trust ChatGPT or any other generative AI tool. The Enterprise version is supposed to have more privacy controls, but I recommend that you only upload data that you don’t mind finding its way into the general public.
Can ChatGPT’s advanced data analysis handle real-time data or is it more suitable for static datasets?
It is possible, but there are some practical limitations. Firstly, the Plus account will reduce the number of orders you can place over a certain period of time. Secondly, you have to download each file separately. There is the possibility to use the licensed ChatGPT API to perform real-time analytics. But for the chatbot itself, you’re looking at analyzing data at rest.
You can follow my daily project updates on social media. Be sure to sign up for our weekly update newsletter on Substack, and follow me on Twitter at @David Gwertzand on Facebook at Facebook.com/DavidGewirtz on Instagram at Instagram.com/DavidGewirtz and on YouTube at YouTube.com/DavidGewirtzTV.