How to create a decision tree

Lucidchart is a visual workspace that combines diagramming, data visualization, and collaboration to accelerate understanding and drive innovation.

How to create a decision tree

Build, edit, and share your decision tree online

How to create a decision tree

Build and customize diagrams

Calculating the risks, rewards, and monetary gains involved in your decisions just became easier with our intuitive decision tree maker. Whether you need to analyze the riskiness of an investment or you’d like to capture potential outcomes in a sequence of events, Lucidchart can help. Take advantage of straightforward templates and customizable formatting options to make your decision tree quickly and professionally. Organize events and outcomes by shape and color to achieve optimal comprehension with our tree diagram maker.

How to create a decision tree

Visualize potential paths and analyze outcomes

Unlike other decision tree diagram makers, Lucidchart makes it simple to tailor your information in order to understand and visualize your choices. Use data linking to import your data sets seamlessly from a CSV, Excel spreadsheet, or Google Sheet, then calculate each outcome’s probability by applying relevant formulas directly within Lucidchart. With clearly defined visuals and quantifiable conclusions, you’ll be able to weigh out decisions quickly and accurately.

How to create a decision tree

Collaborate with stakeholders

Include key players in the decision-making process with real-time collaboration—from anywhere, at any time. Work in the same document simultaneously or collect feedback from your team through in-product chat. Each change you make in the tree diagram maker will be reflected immediately to ensure that everyone has access to up-to-date information at all times. Your team can add comments to highlight gaps in the thought process or give their opinions on the best decision to make.

How to create a decision tree

Present and share diagrams

Lucidchart makes it possible to share and publish your work across platforms in seconds. Send your decision tree to individual email addresses, generate a published link to embed on your site, or download your decision tree diagram. Share your work with customized permissions to prevent unwanted editing or send via your favorite applications, such as G Suite, Confluence, and Slack. Lucidchart runs uniformly on Mac, Windows, and Linux operating systems, so you’ll never have to worry about your work being compromised.

How to make a decision tree diagram

Start the tree

Drag a rectangle shape onto the canvas near the left margin and enter the main idea or question that requires a decision.

Add nodes as outcomes

Use a circle shape to add nodes that display the name of each uncertain outcome. Add as many possibilities as you want with a minimum of two.

Draw lines as outcomes with estimated worth

Connect your main idea to primary nodes and to the nodes thereafter using lines. To these lines, you can add specific values and estimates of how much impact a particular outcome can cause.

Complete the decision tree and calculate the value

Once every question is connected to a chance event, insert a triangle at the end of the diagram to signify an outcome. Estimate the probability of each outcome and use the nodes and branch values to calculate final values.

Verify and use it or publish and share

Use real-time collaboration to get feedback from your team, or publish the diagram using Lucidchart’s easy sharing options.

FAQs about using our tree diagram maker

Decision tree diagrams are used to clarify strategy and estimate possible outcomes during any decision-making process. Beginning with a single node, they branch into probable outcomes, calculating the risks, costs, and benefits of each decision.

Yes! The template gallery in our editor offers several decision tree templates, which can help you create a decision tree online based on your costs and potential outcomes. In the editor, type “decision tree” in the template search and select from the examples provided.

Lucidchart’s drag-and-drop interface makes it easy to create decision trees from scratch. If you’re not sure where to begin, choose a template to customize. You can also import your data into Lucidchart from a spreadsheet, CSV, or Google Sheet.

Yes! Use formulas in Lucidchart to calculate more accurate outcomes. When applied, these formulas will automatically adjust potential costs or values as you branch out your decision tree.

The decision on the future of an ancient oak tree in Peterborough has been delayed until at least next month.

Peterborough City Council’s Growth, Environment and Resources Scrutiny Committee was due to make a final decision and bring to an end the ongoing saga of the ancient oak that sits in Ringwood, Bretton, on Thursday (January 6).

The item has now been deferred though and will instead be discussed at an extraordinary meeting, which is expected to take place in the middle of next month.

A council spokesperson said: “Please note that the Bretton Tree Petition item has been deferred from this meeting, with the agreement of the Chair, Vice-Chair and Group Representatives.

Sign up to our daily newsletter

“Instead, a separate extraordinary meeting will be held to discuss this item. The date of this meeting is TBC but will likely be in mid to late February.”

The council maintains that the roots if the tree, which campaigners believe to be around 600 years old, are causing structural problems to a nearby home and are likely to do so to surrounding properties as time goes on.

A promise has been made to plant six trees, however, campaigners have said that there is no need to fell the tree and suggested that the removal of the tree could even make the homeowner’s problems worse.

Petitions to save the tree have attracted over 3000 signatures and campaigners have been fighting since last July to save the tree following attempts by the council to fell the tree.

October 21, 2021

Copy to Clipboard

Making decisions is a part of everyday life and sometimes the decisions you make can be complex. One aid people or businesses can use to help them decide something is a decision tree, which is a visual aid you can create in programs such as Excel. Knowing what a decision tree is and how to create one can help you make more informed decisions based on the data you have. In this article, we discuss what a decision tree in Excel is and look at five steps you can use to create one.

What is a decision tree in Excel?

A decision tree in Excel is a visual aid that you can use to help make informed decisions. Businesses, data analysts, C-level executives and some people in their personal lives may use decision trees to inform their choices for major events. In Excel, you can connect a decision tree to the data on a spreadsheet within the program, allowing the tree to remain relevant as changes to the data occur. This can be helpful when data changes. Having a decision tree in Excel can also help others interpret data and come to their own conclusion about their decisions.

How to create a decision tree in Excel in 5 steps

There are several methods for creating a decision tree in Excel, all of which use external programs. Here are five steps you can use to create a decision tree in Excel:

1. Choose a program to use with Excel

The first step to creating a decision tree is to choose a program that can work with Excel to create one. Within Microsoft 365, there is a program called Visio, which works across the entire Microsoft Office suite of programs. Outside of Microsoft, there are other options, such as:

Simple Decision Tree

Each of these programs can work with Excel to create a visual decision tree, potentially helping you make well-informed decisions based on the data you enter into your spreadsheet.

2. Enter the data into an Excel spreadsheet

The next step is to enter the data you want for the decision tree into your spreadsheet. This includes aspects such as each of the “nodes” or “branches” of the data, which are the choices you might make throughout the process. After you insert the choices, enter the data you need that inform the decision, such as monetary values, temperatures, weather or success metrics. For example, if you create a decision tree for what kind of outfit to wear based on the weather, then the temperature, weather and outfit choices are data you can include.

This data is important because, as the programs create the decision tree, they use quantifiable data from the Excel spreadsheet to inform the decisions. This is also important if you are using the decision tree only as a visual aid because the data in the tree updates based on the information in the spreadsheet, especially if the data you use is numerical. For example, if you are using the tree to make a financial decision for a business, then populating the Excel spreadsheet with relevant monetary values can help you ensure you make the best choice possible for your company.

3. Create dialog or text boxes that display information

After you insert all your data into an Excel spreadsheet, you can create text or dialog boxes to display the information about your choices. This can help you create a text or image display based on the data you inserted. Below are steps you can use to insert text boxes and attach them to the relevant cells in the spreadsheet:

Click the “Insert” tab in the ribbon at the top of the Excel program.

Select the “Text” option.

Choose the “Text Box” option.

Decide whether you want a “Horizontal” or “Vertical” text box.

Click “Illustrations” in the “Insert” tab.

Select “Shapes” from the list of options.

Choose a line to connect each of the text boxes.

4. Insert a starting condition for the decision tree to activate

Insert a condition in a blank cell near where the first text box is to begin the first decision. This can help your spreadsheet look more professional by keeping the important data near the decision tree visual. Depending on which program you are using with Excel, the tree may behave differently. For example, if you are using Visio and Excel, the tree remains a static visual aid you can use, but other programs may cause the tree to move or change shape slightly to conform to the program’s needs.

The starting condition you use can be a threshold, a matching set of text within a cell or an equation. For example, if you are working in finance and need a certain amount of money available before you decide what to do with it, you can set that amount of money as the starting condition for the decision tree. You could also use a formula such as the “greater than or equal to” function or “MATCH” as the starting condition for your decision tree.

5. Design equations for each of the decisions the tree details

The last step of creating a decision tree in Excel is to design equations for each of the text boxes you created previously. For example, you can insert an equation into a blank cell in the Excel spreadsheet and then have the text box reference that cell so that it displays the outcome of the equation. You can also create and use cell references along with Excel formulas and functions to create complex calculations and highlight specific text boxes based on the data you entered. This can be helpful for quick decisions based only on the data you have.

Please note that none of the products or companies mentioned in this article are affiliated with Indeed.

Reading time: about 6 min

Posted by: Lucid Content Team

Imagine that you’re sitting in a meeting with your company’s executives. You have decided that it will be more profitable for the company to build out a new software feature than to leverage an existing one—you have the data to prove it—but now you have to convince your leaders. And your spreadsheet of numbers is putting them to sleep.

Transform your data into a more interesting, more convincing decision tree diagram in Excel. Decision trees provide a more consumable layout for your data as you consider different options, and then they help justify your decision to others. This guide outlines two approaches to make a decision tree in Excel:

Option #1: Use Lucidchart to add a decision tree in Excel

Don’t limit yourself to manually making a decision tree in Excel—Lucidchart fully integrates with Microsoft Office, so you can add diagrams to your spreadsheets in a few simple clicks. Start diagramming your decision tree faster with drag-and-drop shapes, customizable templates, and more using Lucidchart’s free add-in with Excel. If you need more detailed instructions on how to make a decision tree diagram, use our step-by-step guide.В

Not yet a Lucidchart user? Start your free account now.В

How to install the Lucidchart add-in for Excel

To get started, you’ll need to download the Lucidchart add-in for Excel. To do so, follow these simple steps:

  1. Open an Excel spreadsheet.В
  2. Go to Insert > Add-in > Get add-in.
  3. Use the search bar to find and select “Lucidchart Diagrams for Excel.”В
  4. Click “Add.”В
  5. Accept the terms and conditions.В В
  6. Log in with your Lucidchart credentials to access your documents.В В

How to insert a decision tree into Excel with the Lucidchart add-in

Quickly insert a decision tree into your spreadsheet, as a high-resolution image, without ever leaving Excel using the Lucidchart add-in.В

  1. In Excel, find the Lucidchart add-in in the upper-right corner.В
  2. Click ”Insert Diagram.”В
  3. Select your decision treeВ from the list.В
  4. A preview will appear in the bottom box. If it is the correct document, click “Insert.”В
  5. To edit your decision tree, select “Edit.” Make the necessary changes in the pop-up window and then click “Insert” to update your decision tree.

How to create a decision tree

How to make a new decision tree in Excel with the add-in

Want to make a decision tree from scratch? Create and edit your own decision tree in Excel using the Lucidchart editor with the Microsoft add-in.В

  1. In Excel, select “Insert Diagram” to open the Lucidchart panel.В
  2. Click “Create New Diagram” at the top of the panel to open the Lucidchart editor in Excel.В
  3. Choose either a blank document or template to start.В
  4. Drag and drop shapes and edit the text to build your decision tree within the Lucidchart editor.В
  5. Save your completed decision tree and then click back into your Excel spreadsheet.В
  6. Select your new decision tree from the sidebar to preview and then click “Insert.”

How to create a decision tree

Visit our Help Center or watch the video tutorial below for additional instructions on installing and using the Lucidchart add-in.

Option #2: Make a decision tree in Excel using the shape library or SmartArt

If you’re still set on making a decision tree manually in Excel, you can do so using either the shape library or SmartArt. Each of these options is more time-consuming and will be harder to customize than a decision tree created in Lucidchart.В

How to make a decision tree using the shape library in ExcelВ

Microsoft’s shape library allows you to build a decision tree using individual shapes and lines.В

  1. In your Excel workbook, go to Insert > Illustrations > Shapes. A drop-down menu will appear.В
  2. Use the shape menu to add shapes and lines to design your decision tree.В
  3. Double-click the shape to add or edit text.В
  4. Save your spreadsheet.

To use data to build your decision tree, you will need to conditionally format the cells with the appropriate data and use formulas to determine the correct output for your decision tree.

How to create a decision tree

How to make a decision tree using SmartArt in ExcelВ В

SmartArt graphics make it easy to create simple diagrams in Excel, but they are rigid and hard to edit and customize. Follow these steps below to use SmartArt:

  1. In your Excel workbook, go to Insert > Illustrations > SmartArt. A pop-up window will open.В
  2. Go to “Hierarchy” diagrams, select the one that fits your needs, and click “OK.”В
  3. Double-click “Text” to modify the text or use the text pane.В
  4. Select the graphic, and click “Add Shape” to make the decision tree bigger.В
  5. Save the spreadsheet once you’ve finished your decision tree.В

How to create a decision tree

Advantages of choosing Lucidchart

Speaking of decisions, let’s talk about why Lucidchart is your best choice for decision tree software.

  • It’s intuitive. Drag shapes onto the canvas, instantly connect them with lines, and add your text. It’s simple and easy.В
  • It’s professional. You can line up your shapes more easily and change styling like colors and fonts for a more personalized, professional diagram.
  • It’s easy to import. Because Lucidchart integrates with Microsoft Office, you are only a few clicks away from transporting your decision tree to your Excel spreadsheet.

While it is possible to manually make a decision tree in Excel, it is a rigid process that makes it difficult to customize and update your decision tree. With Lucidchart, you can quickly edit and use templates to make decision faster and visualize your choice.

Business rules are a key ingredient for making business decisions. Which customers can be offered a higher credit limit? How much taxes to charge on a transaction? What purchases qualify for installment payments? These decisions require both the data (the parameters that will be evaluated) and the business logic (business rules) for evaluating the parameters.

Capturing business rules can get complicated. Traditional textual representation only works for straightforward rules and small number of variations. The more If-Then-Else constructs you have to use, the harder it will be to make textual representation clear and unambiguous. Just try reading some of the Terms and Conditions that you usually skip, or any the tax rules and regulations.

When we need to evaluate multiple conditions e.g. use a set of business rules to make a decision, two techniques – decision tables and decision trees – are useful to master.

A decision tree is preferred when each condition has no more than two or three outcomes. A business analyst skillful with this technique can become fast friends with the development team: a decision tree can be easily translated into the programming logic, and developers will appreciate the clarity and ease of validation.

From the stakeholders’ perspective, a decision tree may be easier to validate than a table, as the logic is visual. Only when the number of factors and possible values grows fast, the tree may become too wide and unmanageable, and then the decision table will be your other option.

So what exactly is a decision tree?

A decision tree is a visual map representing all paths to possible outcomes depending on a limited number of factors.

Here is a simple example depicting the logic you might follow when you need to borrow $1,000. Depending on how long you need the money for, and what is your credit history, you have a few decision options.

How to create a decision tree

You can use a decision tree as a visual representation of a set of business rules that will show the path to each possible decision when a predefined set of factors is evaluated. A business analyst will need to discover and confirm:

  • What factors are essential to making a decision (conditions)
  • What are possible values of each decision factor (alternatives)
  • What are possible outcomes (decisions)
  • How each factor influences the outcome

Using these elements, create a decision tree following this structure:

How to create a decision tree

There are several modelling notations used for decisions trees, and the shapes utilized to depict the nodes and leaves vary. You can choose any notation that your environment is accustomed to (or introduce your favourite notation), as long as you follow these best practices:

  • A tree must start from one point but will have multiple end points – leaves (decisions).
  • You can build a decision tree top down, as in the examples above, or left to right, with the leaves on the far right. Choose what is more suitable based on the number of branches and the depth of the tree.
  • The order in which you apply conditions matters. Start with conditions that apply to most scenarios, and as you narrow down the scenario, use the conditions that are specific only to a particular branch of the tree.
  • For each condition, ensure that all possible alternatives are included. Do not leave gaps and avoid overlaps – the alternatives must be mutually exclusive.
  • Not all paths to the final outcomes need to be the same depth. Based on the conditions, some decisions can be reached with fewer evaluations.
  • Make the labels on the tree brief and succinct. Drop articles and prepositions. No full sentences are required. All descriptions and clarifications can be provided below, as the focus of the tree should be on the logic and its direction. Follow the modelling best practices.

The beauty of decision trees is in the visible depiction of the logic. We can see how many conditions have to be evaluated, what are possible alternatives for each condition and what are possible outcomes. Once this information is captured visually, your stakeholders will find it easier to see what is missing or incorrect.

To practice creating decision trees, follow along with this video:


Decision trees are a common model type used for binary classification tasks. The natural structure of a binary tree, which is traversed sequentially by evaluating the truth of each logical statement until the final prediction outcome is reached, lends itself well to predicting a “yes” or “no” target. Such examples include predicting whether a student will pass or fail an exam, whether an email is spam or not, or if a transaction if fraudulent or legitimate.

Decision trees can also be used for regression tasks! Predicting the grade of a student on an exam, the number of spam emails per day, the amount of fraudulent transactions on a platform, etc. are all possible using decision trees. The algorithm works in much the same way, with modification only to the splitting criteria and how the final output it computed. In this article, we will explore both a binary classification and regression model using decision trees with the Indian Graduate Admissions dataset.


The data contains features commonly used in determining admission to masters’ degree programs, such as GRE, GPA, and letters of recommendation. The complete list of features is summarized below:

  • GRE Scores ( out of 340 )
  • TOEFL Scores ( out of 120 )
  • University Rating ( out of 5 )
  • Statement of Purpose and Letter of Recommendation Strength ( out of 5 )
  • Undergraduate GPA ( out of 10 )
  • Research Experience ( either 0 or 1 )
  • Chance of Admit ( ranging from 0 to 1 )

We’re going to begin by loading the dataset as a pandas DataFrame . Feel free to open up a jupyter notebook on the side to implement the code in the article!

Decision Trees for Classification: A Recap

As a first step, we will create a binary class (1=admission likely , 0=admission unlikely) from the chance of admit – greater than 80% we will consider as likely. The remaining data columns will be used as predictors.

Fitting and Predicting

We will use scikit-learn ‘s tree module to create, train, predict, and visualize a decision tree classifier. The syntax is the same as other models in scikit-learn , once an instance of the model class is instantiated with dt = DecisionTreeClassifier() , .fit() can be used to fit the model on the training set. After fitting, .predict() (and predict_proba() ) and .score() can be called to generate predictions and score the model on the test data.

As with other scikit-learn models, only numeric data can be used (categorical variables and nulls must be handled prior to model fitting). In this case, our categorical features have already been transformed and no missing values are present in the data set.

Two methods are available to visualize the tree within the tree module – the first is using tree_plot to graphically represent the decision tree. The second uses export_text to list the rules behind the splits in the decision tree. There are many other packages available for more visualization options – such as graphviz , but may require additional installations and will not be covered here.

Split Criteria

For a classification task, the default split criteria is Gini impurity – this gives us a measure of how “impure” the groups are. At the root node, the first split is then chosen as the one that maximizes the information gain, i.e. decreases the Gini impurity the most. Our tree has already been built for us, but how was the split cgpa determined? cgpa is a continuous variable, which adds an extra complication, as the split can occur for ANY value of cgpa .

To verify, we will use the defined functions gini and info_gain . By running gini(y_train) , we get the same Gini impurity value as printed in the tree at the root node, 0.443 .

Next, we are going to verify how the split on cgpa was determined, i.e. where did the 8.845 value come from. We will use info_gain over ALL values of cgpa to determine the information gain when split on each value. This is stored in a table and sorted, and voila, the top value for the split is cgpa ! This is also done for every other feature (and for those continuous ones, every value), to find the top split overall.

After this process is repeated, and there is no further info gain by splitting, the tree is finally built. Last to evaluate, any sample traverses through tree and appropriate splits until it reaches a leaf node, and then assigned the majority class of that leaf (or weighted majority).


For the regression problem, we will use the unaltered chance_of_admit target, which is a floating point value between 0 and 1.

Fitting and Predicting

The syntax is identical as the decision tree classifier, except the target, y, must be real-valued and the model used must be DecisionTreeRegressor() . As far as model hyperparameters, almost all are the same, except the criterion used must be for a regression task – the default is MSE (mean squared error), which we will investigate below:

Similarly, the tree can be visualized using tree.plot_tree – keeping in mind the splitting criteria is mse and the value is the average chance_of_admit of all samples in that leaf.

Split Criteria

Unlike the classification problem, there are no longer classes to split the tree by. Instead, at each level, the value is the average of all samples that fit the logical criteria. In terms of evaluating the split, the default method is MSE. For example, the root node, the average target value is 0.727 (verify y_train.mean()). Then the MSE (mean-squared error) if we were to use 0.727 as the value for all samples, would be:

np.mean((y_train – y_train.mean())**2) = 0.02029

Now to determine the split, for each value of cpga , the information gain, or decrease in MSE after the split, is calculated and then values are sorted. Like before, we can modify our functions for the regression version, and see the best split is again cpga .

The below code challenges walks you through the details – in the regression version, instead of Gini impurity, MSE is used, and the information gain function is modified to mse_gain .

Again, the process will continue until there is no increase in information gain by splitting. Now that the tree has been built, evaluation occurs in much the same way. Any sample traverses through the tree until it reaches a leaf node, then assigned the average value of the samples in leaf. Depending on the depth of the tree, the predicted values can be limited. In this example, only four unique predicted values are possible, which we can verify. This is something to be aware of when using a decision tree regressor, unlike linear/logistic regression, not all output values may be possible.

How to create a decision tree

When faced with an important decision, there are a variety of informal methods you can use to visualize various outcomes and choose an action — perhaps you talk it out with a colleague, make a pros and cons list, or investigate what other leaders have done in similar situations.

Particularly when it comes to marketing, this can feel risky — what if my colleague is so attached to a new product, she doesn’t want to mention any of its shortcomings? What if my marketing team doesn’t mind office growth, but they haven’t considered how it will affect our strategy long-term?

Sometimes, you can’t make a decision properly without introducing a formal decision-making method. In cases like those, you might need a decision tree.

What is a decision tree?

A decision tree is a flowchart-style diagram to help you analyze various courses of action you might take for any given obstacle, and the consequences for each. There are three parts to a decision tree: the root node, leaf nodes, and branches. This method can help you weigh risk versus reward, and map out a course of action to follow.

The visual element of a decision tree helps you include more potential actions and outcomes than you might’ve if you just talked about it, mitigating risks of unforeseen consequences. Plus, the diagram allows you to include smaller details and create a step-by-step plan, so once you choose your path, it’s already laid out for you to follow.

Here, we’ll show you how to create a decision tree and analyze risk versus reward. We’ll also look at a few examples so you can see how other marketers have used decision trees to become better decision makers.

Decision Tree Analysis

Let’s say you’re deciding whether to advertise your new campaign on Facebook, using paid ads, or on Instagram, using influencer sponsorships.

For the sake of simplicity, we’ll assume both options appeal to your ideal demographic and make sense for your brand.

Here’s a preliminary decision tree you’d draw for your advertising campaign:

How to create a decision tree

As you can see, you want to put your ultimate objective at the top — in this case, Advertising Campaign is the decision you need to make.

Next, you’ll need to draw arrows (your branches) to each potential action you could take (your leaves).

For our example, you only have two initial actions to take: Facebook Paid Ads, or Instagram Sponsorships. However, your tree might include multiple alternative options depending on the objective.

Now, you’ll want to draw branches and leaves to compare costs. If this were the final step, the decision would be obvious: Instagram costs $10 less, so you’d likely choose that.

However, that isn’t the final step. You need to figure out the odds for success versus failure. Depending on the complexity of your objective, you might examine existing data in the industry or from prior projects at your company, your team’s capabilities, budget, time-requirements, and predicted outcomes. You might also consider external circumstances that could affect success.

In the Advertising Campaign example, there’s a 50% chance of success or failure for both Facebook and Instagram. If you succeed with Facebook, your ROI is around $1,000. If you fail, you risk losing $200.

Instagram, on the other hand, has an ROI of $900. If you fail, you risk losing $50.

To evaluate risk versus reward, you need to find out Expected Value for both avenues. Here’s how you’d figure out your Expected Value: take your predicted success (50%) and multiply it by the potential amount of money earned ($1000 for Facebook). That’s 500.

Then, take your predicted chance of failure (50%) and multiply it by the amount of money lost (-$200 for Facebook). That’s -100.

Add those two numbers together. Using this formula, you’ll see Facebook’s Expected Value is 400, while Instagram’s Expected Value is 425.

With this predictive information, you should be able to make a better, more confident decision — in this case, it looks like Instagram is a better option. Even though Facebook has a higher ROI, Instagram has a higher Expected Value, and you risk losing less money.

How to create a decision tree in Excel

  1. Put your base decision under column A, and format cell with a bold border
  2. Put potential actions in column B in two different cells, diagonal to your base decision
  3. In column C, include potential costs or consequences of the actions you put in column B
  4. Go to shape tool, and draw arrow from initial decision, through action and consequence

While the Advertising Campaign example had qualitative numbers to use as indicators of risk versus reward, your decision tree might be more subjective. For instance, perhaps you’re deciding whether your small startup should merge with a bigger company. In this case, there could be math involved, but your decision tree might also include more quantitative questions, like: Does this company represent our brand values? Yes/No. Do our customers benefit from the merge? Yes/No.

To clarify this point, let’s take a look at some diverse decision tree examples.

Decision Tree Examples

The following example is from SmartDraw, a free flowchart maker:

Example One: Project Development

How to create a decision tree

Example 2: Office Growth

How to create a decision tree

Here’s an example from Statistics How To:

Example 3: Develop a New Product

How to create a decision tree

To see more examples or use software to build your own decision tree, check out some of these resources:

Remember, one of the best perks of a decision tree is its flexibility. By visualizing different paths you might take, you might find a course of action you hadn’t considered before, or decide to merge paths to optimize your results.

How to create a decision tree

How to create a decision tree

Originally published Jun 6, 2018 6:00:00 AM, updated July 12 2019

I am very new to powerapps. I have been trying to make a decision tree based on a sharepoint online list. The idea is that people are able to add items to the list so extra option become available in the application. It will be a troubleshooting application that determines the issue, possible cause, and then a solution. The idea is that people are able to add items to the sharepoint list so extra options become available in the application. The list looks something like this:

Head Cat. Head Cat. Desc. Sub Cat. Sub Cat. Desc. Solution Pictures
Head Cat. AHead Cat. Desc. ASub. Cat. ASub. Cat. Desc. ASolution Apic1,pic2,pic3
Head Cat. AHead Cat. Desc. ASub. Cat. BSub. Cat. Desc. BSolution Bpic1,pic2,pic3
Head Cat. BHead Cat. Desc. BSub. Cat. ASub. Cat. Desc. ASolution Apic1,pic2,pic3
Head Cat. BHead Cat. Desc. BSub. Cat. CSub. Cat. Desc. CSolution Cpic1,pic2,pic3

There are few steps in the decision tree:

1. Main categories

3. Possible causes

It looks a little bit like this.

I am using a gallery to show the main categories. However, I only want to show the distinct values. I have managed to only show the distinct values by using distinct or group by, however, I am not able to show the main category description or the pictures.

Screen 1 shows the main categories with:

– ThisItem. Head Cat. Desc.

Is there a way to filter for the distinct values and still show the corresponding data? Any other advice is welcome as well.

A decision tree is a visualization tool used in statistics, data mining, and machine learning to determine a course of action.

Decision trees help in understanding complex issues and setting the course of actions aiming to solve problems. They enable the use of the actual insights to plan the following steps, make conclusions, and develop predictions.

The origin of decision tree name

The name came from the shape this diagram takes: it is usually depicted as an upright or a horizontal diagram with multiple branches out. Every branch stands for a possible decision, effect, or reaction.

The benefits of decision diagrams

By displaying decisions, effects, and reactions in a sequence of stages and steps, decision trees give people and organizations an easy-to-understand way to comprehend and predict the potential effects of their decisions and outcomes that may occur. They are useful in risk management and support decision-making processes.

Learn more


Related Video

  • How to create a decision tree

Decision Trees Explained

Get to know the basics of decision trees, where they find their application and learn how to create one on your own.

Similar Terms

  • How to create a decision tree

Concept Map

Concept maps are visual representations of information that can take different types of charts, tables.

Learn more from our Blog

  • How to create a decision tree

From unreadable tables to jaw-dropping interactive visualization – get to know AI chatbot platform’s story

Chatbots have become an everydayness for Internet users therefore conversational platforms creators.

How to create a decision tree

Custom Business Diagrams – Importance, Use and Examples

Most companies and corporations support their processes with various tools. Thus, the business diagram is a.

Ready to art awesome apps?

We make it from scratch to accompany you at every step of your plan. Equipped with a multidimensional data visualization tool, get ready to grow your business like a boss.

How to create a decision tree

Hey! In this article, we will be focusing on the key concepts of decision trees in Python. So, let’s get started.

Decision Trees are the easiest and most popularly used supervised machine learning algorithm for making a prediction.

The decision trees algorithm is used for regression as well as for classification problems. It is very easy to read and understand.

What are Decision Trees?

Decision Trees are flowchart-like tree structures of all the possible solutions to a decision, based on certain conditions. It is called a decision tree as it starts from a root and then branches off to a number of decisions just like a tree.

The tree starts from the root node where the most important attribute is placed. The branches represent a part of entire decision and each leaf node holds the outcome of the decision.

Attribute Selection Measure

The best attribute or feature is selected using the Attribute Selection Measure(ASM). The attribute selected is the root node feature.

Attribute selection measure is a technique used for the selecting best attribute for discrimination among tuples. It gives rank to each attribute and the best attribute is selected as splitting criterion.

The most popular methods of selection are:

  1. Entropy
  2. Information Gain
  3. Gain Ratio
  4. Gini Index

1. Entropy

To understand information gain, we must first be familiar with the concept of entropy. Entropy is the randomness in the information being processed.

It measures the purity of the split. It is hard to draw conclusions from the information when the entropy increases. It ranges between 0 to 1. 1 means that it is a completely impure subset.

Here, P(+) /P(-) = % of +ve class / % of -ve class


If there are total 100 instances in our class in which 30 are positive and 70 are negative then,

2. Information Gain

Information gain is a decrease in entropy. Decision trees make use of information gain and entropy to determine which feature to split into nodes to get closer to predicting the target and also to determine when to stop splitting.

Here, S is a set of instances , A is an attribute and Sv is the subset of S .


For overall data, Yes value is present 5 times and No value is present 5 times. So,

Let’s analyze True values now. Yes is present 4 times and No is present 2 times.

For False values,

This value ( 0.126) is called information gain.

3. Gain Ratio

The gain ratio is the modification of information gain. It takes into account the number and size of branches when choosing an attribute. It takes intrinsic information into account.

4. Gini Index

Gini index is also type of criterion that helps us to calculate information gain. It measures the impurity of the node and is calculated for binary values only.


Gini impurity is more computationally efficient than entropy.

Decision Tree Algorithms in Python

Let’s look at some of the decision trees in Python.

1. Iterative Dichotomiser 3 (ID3)

This algorithm is used for selecting the splitting by calculating information gain. Information gain for each level of the tree is calculated recursively.

2. C4.5

This algorithm is the modification of the ID3 algorithm. It uses information gain or gain ratio for selecting the best attribute. It can handle both continuous and missing attribute values.

3. CART (Classification and Regression Tree)

This algorithm can produce classification as well as regression tree. In classification tree, target variable is fixed. In regression tree, the value of target variable is to be predicted.

Decision tree classification using Scikit-learn

We will use the scikit-learn library to build the model and use the iris dataset which is already present in the scikit-learn library or we can download it from here.

The dataset contains three classes- Iris Setosa, Iris Versicolour, Iris Virginica with the following attributes-

  • sepal length
  • sepal width
  • petal length
  • petal width

We have to predict the class of the iris plant based on its attributes.

1. First, import the required libraries

2. Now, load the iris dataset

To see all the features in the datset, use the print function

Decision trees are a fundamental machine learning technique that every data scientist should know. Luckily, the construction and implementation of decision trees in SAS is straightforward and easy to produce.

There are simply three sections to review for the development of decision trees:

  1. Data
  2. Tree development
  3. Model evaluation


The data that we will use for this example is found in the fantastic UCI Machine Learning Repository. The data set is titled “Bank Marketing Dataset,” and it can be found at:

This data set represents a direct marketing campaign (phone calls) conducted by a Portuguese banking institution. The goal of the direct marketing campaign was to have customers subscribe to a term deposit product. The data set consists of 15 independent variables that represent customer attributes (age, job, marital status, education, etc.) and marketing campaign attributes (month, day of week, number of marketing campaigns, etc.).

The target variable in the data set is represented as “y.” This variable is a binary indicator of whether the phone solicitation resulted in a sale of a term deposit product (“yes”) or did not result in a sale (“no”). For our purposes, we will recode this variable and label it as “TARGET,” and the binary outcomes will be 1 for “yes” and 0 for “no.”

The data set is randomly split into two data sets at a 70/30 ratio. The larger data set will be labeled “bank_train” and the smaller data set will be labeled “bank_test”. The decision tree will be developed on the bank_train data set. Once the decision tree has been developed, we will apply the model to the holdout bank_test data set.

Tree development

The code below specifies how to build a decision tree in SAS. The data set mydata.bank_train is used to develop the decision tree. The output code file will enable us to apply the model to our unseen bank_test data set.

The output of the decision tree algorithm is a new column labeled “P_TARGET1”. This column shows the probability of a positive outcome for each observation. The output also contains the standard tree diagram that demonstrates the model split points.

How to create a decision tree

Model evaluation

Once you have developed your model, you will need to evaluate it to see whether it meets the needs of the project. In this example, we want to make sure that the model adequately predicts which observation will lead to a sale.

The first step is to apply the model to the holdout bank_test data set.

The %INCLUDE statement applied the decision tree algorithm to the bank_test data set and created the P_TARGET1 column for the bank_test data set.

Now that the model has been applied to the bank_test data set, we will need to evaluate the performance of the model by creating a lift table. Lift tables provide additional information that has been summarized in the ROC chart. Remember that every point along the ROC chart is a probability threshold. The lift table provides detailed information for every point along the ROC curve.

The model evaluation macro that we will use was developed by Wensui Liu. This easy-to-use macro is labeled “separation” and can be applied to any binary classification model output to evaluate the model results.

You can find this macro in my GitHub repository for my new book, End-to-End Data Science with SAS®. This GitHub repository contains all of the code demonstrated in the book along with all of the macros that were used in the book.

This macro on my C drive, and we call it with a %INCLUDE statement.

The score script that was generated from the CODE FILE statement in the PROC HPSPLIT procedure is applied to the holdout bank_test data set through the use of the %INCLUDE statement.

The table below is generated from the lift table macro.

How to create a decision tree

This table shows that that model adequately separated the positive and negative observations. If we examine the top two rows of data in the table, we can see that the cumulative bad percent for the top 20% of observations is 47.03%. This can be interpreted as we can identify 47.03% of positive cases by selecting the top 20% of the population. This selection is made by selecting observations with a P_TARGET1 score greater than or equal to 0.8276 as defined by the MAX SCORE column.

Additional information about decision trees along with several other model designs are reviewed in detail in my new book End-to-End Data Science with SAS® available at Amazon and

About Author

How to create a decision tree

James Gearheart is an experienced Senior Data Scientist and Machine Learning Engineer who has developed transformative machine learning and artificial intelligence models. He has over 20 years of experience in developing and analyzing statistical models and machine learning products that optimize business performance across several industries including digital marketing, financial services, public health care, environmental services, social security, and worker’s compensation. James is the author of End-to-End Data Science with SAS®: A Hands-On Programming Guide.


Hi James,
I’d like to use HPSPLIT to illustrate a decision tree based on five categorical variables, the last level as the outcome. Let’s call them Level1 through Level5 (outcome). To illustrate the null case or arrangement, I would like to force SAS to use a specific order of variables ending with the outcome variable. Is it possible to force SAS into following a specific order of variables for several levels in HPSPLIT before I begin entropy testing and scoring?
Thank you.

Thanks James, I had been meaning to dig into your book and now have another reason to do so.

Thanks for posting this James! I am just doing some sort of research, learning and experimentation with building, training and evaluating decision trees in SAS and I find it very useful, will try it right away 🙂 ! Cheers,
Alex Ginev

Leave A Reply Cancel Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Build Simple Decision Trees from Scratch with a Python Example

A decision tree is a popular and powerful method for making predictions in data science. Decision trees also form the foundation for other popular ensemble methods such as bagging, boosting and gradient boosting. Its popularity is due to the simplicity of the technique making it easy to understand. We are going to discuss building decision trees for several classification problems. First, let’s start with a simple classification example to explain how a decision tree works.

The Code

While this article focuses on describing the details of building and using a decision tree, the actual Python code for fitting a decision tree, predicting using a decision tree and printing a dot file for graphing a decision tree is available at my GitHub.

A Simple Example

Let’s say we have 10 rectangles of various widths and heights. Five of the rectangles are purple and five are yellow. The data is shown below with X1 representing the width, X2 representing the height and Y representing the classes of 0 for purple rectangles and 1 for yellow rectangles:

How to create a decision tree

Graphing the rectangles we can very clearly see the separate classes.

How to create a decision tree

Based on the rectangle data, we can build a simple decision tree to make forecasts. Decision trees are made up of decision nodes and leaf nodes. In the decision tree below we start with the top-most box which represents the root of the tree (a decision node). The first line of text in the root depicts the optimal initial decision of splitting the tree based on the width (X1) being less than 5.3. The second line represents the initial Gini score which we will go into more detail about later. The third line represents the number of samples at this initial level — in this case 10. The fourth line represents the number of items in each class for the node — 5 for purple rectangles and 5 for yellow rectangles.

How to create a decision tree

After splitting the data by width (X1) less than 5.3 we get two leaf nodes with 5 items in each node. All the purple rectangles (0) are in one leaf node and all the yellow rectangles (1) are in the other leaf node. Their corresponding Gini score, sample size and values are updated to reflect the split.

In this very simple example, we can predict whether a given rectangle is purple or yellow by simply checking if the width of the rectangle is less than 5.3.

The Gini Index

The key to building a decision tree is determining the optimal split at each decision node. Using the simple example above, how did we know to split the root at a width (X1) of 5.3? The answer lies with the Gini index or score. The Gini index is a cost function used to evaluate splits. It is defined as follows:

The sum of p(1-p) over all classes, with p the proportion of a class within a node. Since the sum of p is 1, the formula can be represented as 1 — sum(p squared). The Gini index calculates the amount of probability of a specific feature that is classified incorrectly when randomly selected and varies between 0 and .5.

Using our simple 2 class example, the Gini index for the root node is (1 — ((5/10)² + (5/10)²)) = .5 — an equal distribution of rectangles in the 2 classes. So 50% of our dataset at this node is classified incorrectly. If the Gini score were 0, then 100% of our dataset at this node would be classified correctly (0% incorrect). Our goal then is to use the lowest Gini score to build the decision tree.

Determining the Best Split

In order to determine the best split, we need to iterate through all the features and consider the midpoints between adjacent training samples as a candidate split. We then need to evaluate the cost of the split (Gini) and find the optimal split (lowest Gini).

Let’s run through one example of calculating the Gini for one feature:

  1. Sorting X1 in ascending order we get the first value of 1.72857131
  2. Let’s calculate the Gini for X1 = 2.771245
  3. For class 0, the split is 1 to the left and 4 to the right (one item 2.771245)
  4. For class 1, the split is 0 to the left and 5 to the right (zero items 2.771245)
  5. The left side Gini is (1 — ((1/1)² + (0/1)²) = 0.0
  6. The right side Gini is (1 — ((4/9)² + (5/9)²) = 0.49382716
  7. The Gini of the split is the weighted average of the left and right sides (1 * 0) + (9 * 0.49382716) = .44444444

Running this algorithm for each row gives us all the possible Gini scores for each feature:

How to create a decision tree

If we look at the Gini scores, the lowest is .0000 for X1 = 6.642 (class 1). We could use 6.642 as our threshold, but a better approach is to use the adjacent feature less than 6.642, in this case X1 = 3.961 (class 0), and calculate the midpoint as this represents the dividing line between the two classes. So, the midpoint threshold is (6.642 + 3.961) / 2 = 5.30! Our root node is now complete with X1 Terminal Nodes

A terminal node, or leaf, is the last node on a branch of the decision tree and is used to make predictions. How do we know when to stop growing a decision tree? One method is to explicity state the depth of the tree — in our example set depth to 1. After our first split we stop building a tree and the two split nodes become leaves. Deeper trees can become very complex and overfit the data.

Another way a tree can stop growing is once the Gini is 0 — then no more splits are necessary. In our example, the depth is 1 and the Gini is 0 for the two leaves, so both methods of achieving termination are met. If we look at the terminal nodes we can see our predictors. If the width of the rectangle (X1) is less than 5.30, then moving to the left of the tree we see that the predicted class is 0 or a purple rectangle. If the width of the rectangle (X1) is greater than 5.30, then moving to the right of the tree we see the predicted class is 1 or a yellow rectangle.

How to create a decision tree

Now that we know when to stop building a decision tree, we can build the tree recursively. Once we have the root node, we can split the node recursively left and right until the maximum depth reached. We have all the basic building blocks from our simple example, but to demonstrate recursive splitting we will need a more complex example. Let’s use the famous, and somewhat tired, Iris dataset as it is easily available in scikit for comparison purposes.

Graphing the Iris data we can clearly see the three classes (Setosa, Versicolor and Virginica) across two of the four features — sepal_length and petal_length:

How to create a decision tree

Let’s create a Decision Tree recursively and see what the results look like.

Need to present complex information in a reader-friendly format? Learn how to create a decision tree with Google Sheets and Zingtree.

Did you know you can easily turn your spreadsheets from Google Sheets into interactive decision trees? The potential benefits of this are countless в€’ from making it easier for your team to find the right information in a dense spreadsheet, to turning internal spreadsheets into interactive, customer facing tools.В

What is an intuitive explanation of a decision tree?В

Simply put, a decision tree is a tool used to clarify, map out, and find answers to complex problems. You can think of it like a diagram or chart that helps us determine a course of action. The chart resembles a tree and usually takes the form of an upright or horizontal diagram with branches. It comprises nodes – representing decisions, and each branch represents a possible decision, outcome, or reaction flowing from the previous decision. The nodes reflect the probable final outcome of each decision pathway.В

What is an interactive decision tree? What makes it different from a decision tree diagram or chart?

Interactive decision trees take the concept of decision trees, but turn them into an effective business decision or process software. An interactive decision tree does not display the entire tree at once, but rather asks the end user to answer one question at a time. The user then navigates through the tree, step-by-step, until a solution or action is presented. This is a more effective way of displaying the information, and has multiple use cases. Interactive decision trees are frequently deployed to determine a course of action in finance, power agent scripting for call centers, standardize internal business processes, help customers answer questions and resolve issues, and more.В

Why is an interactive decision tree a superior way of displaying your information?

While decision trees can help to make your spreadsheets visual, interactive decision trees go one step further. By breaking down the decision tree and asking one question at a time, they prevent the end user becoming overwhelmed by an excess of information that may not be relevant to their specific needs. ‍

Zingtree’s integration with Google Sheets makes it easy for anyone to turn Google Sheets of any size into effective, interactive decision trees that help users navigate complex information and take the next best action.

This easy-to-use, interactive decision tree format not only keeps things simple for the user, but has the potential to increase user engagement and reduce decision-making errors.В

What is the benefit of using Google Sheets to build a decision tree?

Like other G Suite tools such as Google Docs and Google Slides, Google Sheets allows for collaboration across teams, meaning anyone can use it to create a document, spreadsheet, or folder and work together on a single file.

Therefore it’s a great way to work collaboratively to prepare the content within your interactive decision tree. From Google Sheets, you can then import the information into Zingtree in just a few clicks, and bring your interactive decision tree to life.В

How to make a decision tree in Google SheetsВ

It’s easy to build a decision tree from Google Sheets with Zingtree. Our interactive decision tree tools for Google Sheets even include sample templates and powerful analytics.В В

You can use Zingtree and Google Sheets to create an interactive decision tree in just a few steps:В

  • Sign up for a Zingtree account (it’s free for 30 days).
  • Create a Google Sheet with the information you wish your decision tree to contain.
  • Import your Google Sheet into Zingtree’s interactive decision tree builder в€’ you can find more detailed information about how to do this here.
  • Customize your tree with custom branding, drag-and-drop shapes, and more.
  • Publish your final tree to your website.

Where can I find a tutorial on making decision trees in Google Sheets?

For more detailed information, look at our step-by-step tutorial post on making a decision tree in Google Sheets, as well as this tutorial for publishing your decision trees.

Zingtree is the perfect tool to turn your Google Sheet spreadsheets into powerful, interactive decision trees that can live on any website. Plus, Zingtree’s powerful integrations, add-ons, and tools mean that your spreadsheet can become much more than just a decision-making tool. You can set up your interactive decision tree to create documents, send emails, communicate with other tools including databases and CRMs, and much more. No coding is required, so anyone can easily make, modify, and set interactive decision trees live in no time. ‍

Want to get started today? Jump into a free trial, or request a demo with our expert team to discuss your precise use case.В

Learn to build and visualize a Decision tree model with scikit-learn in Python

D ecision trees are the building blocks of some of the most powerful supervised learning methods that are used today.

‘A decision tree is basically a binary tree flowchart where each node splits a group of observations according to some feature variable. The goal of a decision tree is to split the data into groups such that every element in one group belongs to the same category.’

One of the great properties of decision trees is that they are very easily interpreted. You do not need to be familiar at all with machine learning techniques to understand what a decision tree is doing. Decision tree graphs are feasibly interpreted.

Python is a general-purpose programming language and offers data scientists powerful machine learning packages and tools. In this article, we will be building our Decision tree model using python’s most famous machine learning package, ‘scikit-learn’. We will be creating our model using the ‘DecisionTreeClassifier’ algorithm provided by scikit-learn then, visualize the model using the ‘plot_tree’ function. Let’s do it!

Step-1: Importing the packages

Our primary packages involved in building our model are pandas, scikit-learn, and NumPy. Follow the code to import the required packages in python.

After importing all the required packages for building our model, it’s time to import the data and do some EDA on it.

Step-2: Importing data and EDA

In this step, we will be utilizing the ‘Pandas’ package available in python to import and do some EDA on it. The dataset we will be using to build our decision tree model is a drug dataset that is prescribed to patients based on certain criteria. Let’s import the data in python!

Now we have a clear idea of our dataset. After importing the data, let’s get some basic information on the data using the ‘info’ function. The information provided by this function includes the number of entries, index number, column names, non-null values count, attribute type, etc.

Step-3: Data Processing

We can see that attributes like Sex, BP, and Cholesterol are categorical and object type in nature. The problem is, the decision tree algorithm in scikit-learn does not support X variables to be ‘object’ type in nature. So, it is necessary to convert these ‘object’ values into ‘binary’ values. Let’s do it in python!

We can observe that all the ‘object’ values are processed into ‘binary’ values to represent categorical data. For example, in the Cholesterol attribute, values showing ‘LOW’ are processed to 0 and ‘HIGH’ to be 1. Now we are ready to create the dependent variable and independent variable out of our data.

Step-4: Splitting the data

After processing our data to be of the right structure, we are now set to define the ‘X’ variable or the independent variable and the ‘Y’ variable or the dependent variable. Let’s do it in python!

We can now split our data into a training set and testing set with our defined X and Y variables by using the ‘train_test_split’ algorithm in scikit-learn. Follow the code to split the data in python.

Now we have all the components to build our decision tree model. So, let’s proceed to build our model in python.

Step-5: Building the model & Predictions

Building a decision tree can be feasibly done with the help of the ‘DecisionTreeClassifier’ algorithm provided by the scikit-learn package. After that, we can make predictions of our data using our trained model. Finally, the precision of our predicted results can be calculated using the ‘accuracy_score’ evaluation metric. Let’s do this process in python!

In the first step of our code, we are defining a variable called the ‘model’ variable in which we are storing the DecisionTreeClassifier model. Next, we are fitting and training the model using our training set. After that, we defined a variable called the ‘pred_model’ variable in which we stored all the predicted values by our model on the data. Finally, we calculated the precision of our predicted values to the actual values which resulted in 88% accuracy.

Step-6: Visualizing the model

Now that we have our decision tree model and let’s visualize it by utilizing the ‘plot_tree’ function provided by the scikit-learn package in python. Follow the code to produce a beautiful tree diagram out of your decision tree model in python.

How to create a decision tree

There are a lot of techniques and other algorithms used to tune decision trees and to avoid overfitting, like pruning. Although, decision trees are usually unstable which means a small change in the data can lead to huge changes in the optimal tree structure yet their simplicity makes them a strong candidate for a wide range of applications. Before neural networks became popular, decision trees were the state-of-the-art algorithm in Machine Learning. With that, we come to an end and if you forget to follow any of the coding parts, don’t worry I’ve provided the full code for this article.

Decision tree is a graph to represent choices and their results in form of a tree. The nodes in the graph represent an event or choice and the edges of the graph represent the decision rules or conditions. It is mostly used in Machine Learning and Data Mining applications using R.

Examples of use of decision tress is − predicting an email as spam or not spam, predicting of a tumor is cancerous or predicting a loan as a good or bad credit risk based on the factors in each of these. Generally, a model is created with observed data also called training data. Then a set of validation data is used to verify and improve the model. R has packages which are used to create and visualize decision trees. For new set of predictor variable, we use this model to arrive at a decision on the category (yes/No, spam/not spam) of the data.

The R package “party” is used to create decision trees.

Install R Package

Use the below command in R console to install the package. You also have to install the dependent packages if any.

The package “party” has the function ctree() which is used to create and analyze decison tree.


The basic syntax for creating a decision tree in R is −

Following is the description of the parameters used −

formula is a formula describing the predictor and response variables.

data is the name of the data set used.

Input Data

We will use the R in-built data set named readingSkills to create a decision tree. It describes the score of someone’s readingSkills if we know the variables “age”,”shoesize”,”score” and whether the person is a native speaker or not.

Here is the sample data.

When we execute the above code, it produces the following result and chart −


We will use the ctree() function to create the decision tree and see its graph.

When we execute the above code, it produces the following result −

How to create a decision tree


From the decision tree shown above we can conclude that anyone whose readingSkills score is less than 38.3 and age is more than 6 is not a native Speaker.

Experienced Developer, Team Player and a Leader with a demonstrated history of working in startups. Strong engineering professional with a Bachelor of Technology (BTech) focused in Computer Science from Indian…

If you were wondering ‘how to create a decision tree’ or ‘can I create a decision tree in Java,’ you’ve come to the right place. In this article, we’ll find answers to such questions as we’ll be discussing decision trees in detail. You’ll find out what they are, why they are so popular, and how you can create one of them.

Before you create a decision tree, you must be familiar with several other topics such as Linear Regression and algorithms.

Table of Contents

What is a Decision Tree?

A decision tree gives you a map of all the possible outcomes of particular selections. It can help you plan out the future actions under different scenarios according to different choices. You can compare those possible outcomes on the basis of their probabilities and costs.

As the name suggests, a decision tree shows a graph resembling a tree. It is a model of decisions, along with the outcomes and consequences of every one of them. Its ultimate goal is to help you perform classification correctly while going through the lowest number of choices possible.

You can represent boolean functions by using decision trees as well. Each leaf node of a decision tree is a class label, and the internal nodes of the tree show the attributes. They begin with one node and then branch off into all the possibilities. Every one of those branches leads to more nodes that represent other possible consequences. You can create a decision tree in Java.

How to create a decision tree

A decision tree has various kinds of nodes:

  • Decision Nodes
  • Chance Nodes
  • End Nodes

The end nodes reflect the final result of a decision path while the chance nodes show the chances of particular outcomes. The decision nodes indicate the decision you’ll make that would lead to the possible results. You can use decision trees to map out algorithmic predictions as well as to make informal decisions.

Now that you’re familiar with what a decision tree is, we should focus on digging a little deeper and understand why it’s prevalent. Let’s dive in.

Applications of Decision Tree

Here are some applications of decision trees so you can see how prevalent they are:

  • Banks use them to classify their loan applications
  • Finance professionals use decision trees for option pricing
  • Categorizing exam papers according to the level of expertise of the candidates
  • Choosing whether to accept or reject a job offer
  • Making essential business decisions such as whether a company should modify its product or not.

You must’ve used decision trees yourself in making various choices in your life. Just come up with a few scenarios where you had to make an intricate decision.

Advantages of Decision Tree

There are many advantages to using a decision tree. Here are they:

  • Decision trees produce rules that you can understand easily. You wouldn’t have difficulty conveying those rules to other systems.
  • They can handle both categorical as well as continuous variables
  • A decision tree will give you a simple indication of the importance of every field. You can easily make predictions (or classifications) according to the same.
  • Decision trees also perform feature selection implicitly that helps you with data exploration.

Disadvantages of Decision Tree

Everything has its flaws, and decision trees are no exception. Here are some problems with using them:

  • Decision trees aren’t useful for performing estimation tasks. That’s because such jobs require the prediction of a continuous attribute’s value, and decision trees aren’t good at that.
  • Computationally, decision trees are more expensive than other options. It’ll cost you a lot to train a decision tree model as well in comparison to others. The pruning algorithms you’d use in making decision trees are also quite expensive as they require to build many sub-trees.
  • If you have a high number of classes examples but a low number of training examples, your decision trees wouldn’t be much accurate, and their chances of containing errors would be significantly high.

How to Create a Decision Tree

Let’s create a decision tree on whether a person would buy a computer or not. In this case, we’d have two classes, ‘Yes’ and ‘No.’ The first class refers to the people who would buy a computer, while the second refers to those who wouldn’t. First, we’ll calculate Information Gain and Entropy for these classes.

Once we’ve calculated the Entropy of these classes, we’ll focus on information gain. We can classify the values of Entropy like this:

If Entropy is 0, it means the data is pure (homogenous)

If Entropy is 1, it means the data is impure (half-divided)

Let’s suppose our Entropy is impure. Then we’ll split the information gain on age. This way, our data will show how many people of a specific age bracket will buy this product and how many won’t. We can calculate the information gain for multiple attributes. But in our example, we found that the information gain is highest for ‘Age’ and the lowest for ‘Income.’ So, we’ll go with that.

Here are the classification rules for this decision tree:

If someone’s age is less than 30 and if that person isn’t a student, they won’t buy the product so:

Age ( But if someone whose age is less than 30 and is a student, they would buy the product:

Age ( Now, if their age lies between 31 and 40, they would surely buy the product:

Age(31…40) = YES

A person with age higher than 40 and a high credit rating wouldn’t buy:

Age(>40)^ credit_rating(high) = NO

On the other hand, if a person who is older than 40 but has an average credit rating, he or she would buy the product:

How to create a decision tree

Age(>40)^ credit_rating(normal) = YES

By following these steps, you’d be able to create the perfect decision tree without any difficulty.


Now you must know how to create a decision tree. You can learn a whole lot more about decision trees and the relevant algorithms in our machine learning course. We’re sure you’d get to enhance your knowledge there as you’ll get to learn how you can create a decision tree in Java, how you can use them in real-life, and more.

If you’re interested to learn more about machine learning, check out IIIT-B & upGrad’s PG Diploma in Machine Learning & AI which is designed for working professionals and offers 450+ hours of rigorous training, 30+ case studies & assignments, IIIT-B Alumni status, 5+ practical hands-on capstone projects & job assistance with top firms.

Elements of Creating a Decision Tree

A decision tree starts from one end of the sheet of paper or the computer document, usually the left-hand side. The starting point extends in a series of branches or forks, each representing a decision, and it may continue to expand into sub branches, until it generates two or more results or nodes. The tree expands or grows until at least one branch leads to a decision node or a chance node.

The nodes of a decision tree are:

  • Decision node: Decision nodes, conventionally represented by squares, represent an outcome defined by the user. The attribute undergoes some test or evaluation at this node, and each possible outcome of such evaluation generates a branch and a sub-tree.
  • Leaf node: Leaf nodes indicate the value of the target attribute
  • Chance node: Chance nodes, conventionally represented by circles, represent uncertain outcomes under the mercy of external forces
  • End node: End nodes, conventionally represented by triangles, represent the end of the path.

Once you learn how to create a decision tree, you will realize it is not that difficult a task.

How to Draw a Decision Tree

People generally draw decision trees on paper. Many computer applications nevertheless exist to aid this process. Some applications even generate decision trees automatically by feeding the algorithm.

How do you draw a decision tree? The steps to create a decision tree diagram manually are:

  1. Take a large sheet of paper. The more options there are, and the more complex the decision, the larger the sheet of paper required will be.
  2. As a starting point for the decision tree, draw a small square around the center of the left side of the paper. If the description is too large to fit the square, use legends by including a number in the tree and referencing the number to the description either at the bottom of the page or in another page
  3. Draw out lines (forks) to the right of the square box. Draw one line each for each possible solution to the issue, and describe the solution along the line. Keep the lines as far apart as possible to expand the tree later.
  4. Illustrate the results or the outcomes of the solution at the end of each line. If the outcome is uncertain, draw a circle (chance node). If the outcome leads to another issue, draw a square (decision node). If the issue is resolved with the solution, draw a triangle (end node). Describe the outcome above the square or circle, or use legends, as appropriate.
  5. Repeat steps 2 through 4 for each new square at the end of the solution lines, and so on until there are no more squares, and all lines have either a circle or blank ending.
  6. The circles that represent uncertainty remain as they are. A good practice is to assign a probability value, or the chance of such an outcome happening.

Since it is difficult to predict at onset the number of lines and sub-lines each solution generates, the decision tree might require one or more redraws, owing to paucity of space to illustrate or represent options and or sub options at certain spaces..

It is a good idea to challenge and review all squares and circles for possible overlooked solutions before finalizing the draft.


Using the decision tree diagram to evaluate the best decision among the various options can take many forms, depending on the purpose of the tree.

One basic and simple option is to assign a cash value or score to each possible outcome, by estimating the worth or value generated if the specific outcome comes to pass, and selecting the outcome that scores the most. For circles or chance nodes that have uncertain results, multiply the value by the probability percentage. For instance, if the value is $1000 and the probability of happening is 50 percent, the value for that chance node is $500.

Decision trees are simple tools that make all possible options or decisions to an issue explicit.

Let’s Learn Together and Share Experiences

How to create a decision tree

You will learn how to build statistical visuals like decision trees in Power BI.

The decision tree is an equally important part when we are using the Decision Tree machine learning algorithm for our data science project. Power BI has some small visualization capability and custom visual features are enabling to implement this.

In this blog, we are going to explore one statistical visualization, named decision tree.

Get Data

For this case study, I consider the US Superstore dataset from Kaggle.

  • Let’s start with the Get Data option under the Home tab. As this is a CSV file, select the Text/CSV option from the drop-down list
  • Select the file named US Superstore data.csv
  • After selecting the file, data will be displayed in the below format

How to create a decision treeImage by Author

  • Click on Load and save data.

What is a Decision Tree?

It resembles an upside-down tree.

A decision tree splits the data into multiple sets. Then, each of these sets is further split into subsets to arrive at a decision.

Decision trees make it very easy to determine the important attributes. It requires performing tests on attributes to split the data into multiple partitions.

So the decision trees can go back and tell us the factors leading to a given decision.

If you want to know more about the decision tree, you can check my blog about this.

How to Create a Decision Tree?

In Power BI, many custom visuals are based on R packages. The Decision Tree Chart is based on R package rpart to build the model and rpart.plot to visualize the model as a tree.

Let’s create a Decision Tree step by step.

  1. Goto Visualization section → Click on Get more visuals.
  2. Open the “Power BI Visuals” dialog box. Search with “decision tree”.
  3. Click on Add button beside on Decision Tree Chart

How to create a decision treeImage by Author

4. Select the Decision Tree Chart visual and add it to your current page.

5. This tree predicts the Sales as a Target Variable dependent on the Input Variable Discount. Now you can add variables accordingly in the visual and get the initial view.

How to create a decision treeImage by Author

6. If you want to change some formatting section parameters, it could change the algorithm parameters.

7. If you enable Tree parameters, then you can observe Maximum depth is 15 and Minium bucket size is 2.

Maximum depth means a value between 2 and 15, limiting the number of levels from trunk to leaf. and Minimum bucket size can have a value between 2 and 100. That means, the higher this number, the lower the number of nodes.

8. When you enable Advanced parameters, then three parameters will enable Complexity, Cross-validation and Maximum attempts.

Complexity means a number between 0.5 and one trillion to control if the node needs to be further split or not.

Cross-validation has some different sets of values like Auto, None, 2-fold to 100-fold etc.

Maximum attempts relate to a number between 1 and 1000.

Both Cross-validation and Maximum attempts mean the higher the value the better the accuracy, but the longer the calculation process.

I am keeping the default values.

9. Additional parameters are for showing warning and Show info.

How to create a decision treeImage by Author

10. Now Decision Tree is ready to display.

How to create a decision treeImage by Author


As per the Decision Tree algorithm, Root Node, Decision Node, Terminal Node are key points. From the below picture, you can get some idea about this.

How to create a decision treeImage by Author

  1. The root node is selected based on the results from the selected attributes.
  2. Then these attributes are repeated until a leaf node, or a terminal node cannot be split into sub-nodes.
  3. For the outcome of a prediction with a decision tree, only the leaf-level nodes (plotted on the bottom) are used.
  4. Here at nodes 1 and 3, no decision can be made. Then it is further distributed to next-level nodes.
  5. Now from other nodes (2, 5, 6, 7 etc.), we are getting the predictive result based on some decisions. In this way, you can read one decision tree.


Please find the code in the below location



In this blog, we understand how to create and analyse decision trees in Power BI.

In my next blog, we will learn more about AI and Power BI.

If you have any questions related to this project, please feel free to post your comments.

Please visit my website for other technical resources.

Please like, comment and subscribe to my YouTube channel which you have already seen. 🙂 Keep Learning.

June 22, 2020 by Piotr PЕ‚oЕ„ski Decision tree June 22, 2020 by Piotr PЕ‚oЕ„ski –>

A Decision Tree is a supervised algorithm used in machine learning. It is using a binary tree graph (each node has two children) to assign for each data sample a target value. The target values are presented in the tree leaves. To reach to the leaf, the sample is propagated through nodes, starting at the root node. In each node a decision is made, to which descendant node it should go. A decision is made based on the selected sample’s feature. Decision Tree learning is a process of finding the optimal rules in each internal tree node according to the selected metric.

The decision trees can be divided, with respect to the target values, into:

  • Classification trees used to classify samples, assign to a limited set of values – classes. In scikit-learn it is DecisionTreeClassifier .
  • Regression trees used to assign samples into numerical values within the range. In scikit-learn it is DecisionTreeRegressor .

Decision trees are a popular tool in decision analysis. They can support decisions thanks to the visual representation of each decision.

Below I show 4 ways to visualize Decision Tree in Python:

  • print text representation of the tree with sklearn.tree.export_text method
  • plot with sklearn.tree.plot_tree method (matplotlib needed)
  • plot with sklearn.tree.export_graphviz method (graphviz needed)
  • plot with dtreeviz package (dtreeviz and graphviz needed)

I will show how to visualize trees on classification and regression tasks.

Train Decision Tree on Classification Task

I will train a DecisionTreeClassifier on iris dataset. I will use default hyper-parameters for the classifier.

In this article, we show how to create a decision tree classifier in Python using the sklearn module.

So a decision tree classifier is a tool in machine learning that allows us to make a prediction of what is likely to happen based on a given data set.

It is a predictor in machine learning that is a form of supervised learning in which the computer programs predicts what will happen based on past occurrences.

For example, if it’s raining outside and the rain has caused children in the past to not play outside, then if we know that it’s raining, the likely result is that children are not playing outside. If it is sunny outside and children normally play while it is sunny, we can predict that children are playing outside.

So using a training set of data, a machine learning program can predict to fairly well accurately what will occur given the circumstances.

So below, we will use a decision tree classifier to classify outcomes.

So our scenario is, we want to decide if it is likely that kids will play outside given the weather conditions: the temperature, humidity, and whether or not it is windy.

We put our data in a CSV file. This file can be found at the following link: Play.csv

Below is the Python code that uses a decision tree to classify the outcome whether it is likely the children play or not, given the temperature, humidity, and whether it is windy.

The first thing we have to do is import our modules, including pandas, numpy, matplotlib, seaborn, and sklearn.

We create a variable, df, and set it equal to, pd.read_csv(‘Play.csv’), which reads the contents of the “Play.csv” file.

We create a variable, X, which will contain all columns of a dataframe object except the column that represents the outcome, which is whether the children went out to play.

We then create a variable, y, which represents the column of whether the children played or not.

The line, X_train, X_test, y_train, y_test= train_test_split(X,y,test_size= 0.3), gives us x training data, x testing data, y training dta, and y testing data. This is done using t the train_test_split() function. It allows us to have training data and testing data.

We then create a variable, dtree, and set it equal to DecisionTreeClassifier()

We then train the model using the fit() function. We feed it the training data.

We then create a variable, predictions, which works to predict the results of the test data.

We then want to see the metrics of how well the model predicted data from the test set.

We do a confusion_matrix and a classification report to show the results of how well the model predicted outcomes.

The results are shown below.

The confusion matrix can tell us information about true negatives, false positives, false negatives, and true positives. In this case, there were no false negatives or false positives. There were only true positives and true negatives.

The classification report showed 100% precision with the machine learning model.

So a decision tree classifier can be used to help predict outcomes based on certain given conditions.

The more training data you feed into the machine learning model, the more accurate the model will be. The more it will learn from the training data to be able to accurately predict test data. So keep in mind that you want to give it a good amount of training data. The more training data it has, the more accurate it can be.

And this is how to create a decision tree classifier in Python using the sklearn module.

How to create a decision tree

  • Part 1: What is Decision Tree?
  • Part 2: How to Make a Decision Tree Effortlessly?
  • Part 3: Decision Tree Examples
  • Part 4: Conclusion

Part 1: What is Decision Tree?

If you have a complex decision that needs breaking down, look no further than decision trees. A decision tree shows you all of the possible outcomes of a set of choices. It starts off with a single node or outcome, which branches out into two or more possible outcomes. These will form another node, and more outcomes may branch out from those.

Decision trees are useful when it comes to weighing up the costs and benefits of certain decisions. In business, they may be used to determine the value of each choice. This allows individuals and businesses to choose paths and choices that lead to the most gain, or avoid ones that lead to the most loss.


All-in-One Diagram Software
  • Superior file compatibility: Import and export drawings to various file formats, such as Visio
  • Cross-platform supported (Windows, Mac, Linux, Web)

Part 2: How to Make a Decision Tree Effortlessly?

Step 1: Start EdrawMax.

Step 2: Navigate to [New]>[Project Management]>[Decision Tree]

How to create a decision tree

Step 3: Select one decision tree template to edit on it or click the [+] sign to start from scratch.

How to create a decision tree

Step 4: You can export the file to Graphics, PDF, editable MS Office file, SVG and Visio vsdx file.

How to create a decision tree

Step 5: And you can share your diagram with others via social media and online website page.

How to create a decision tree

Part 3: Decision Tree Examples

Example 1: Decision Trees

This decision tree is used by a group of hikers to decide whether or not to go ahead with their hike, taking into account the strength of various weather-related factors such as humidity and wind.

How to create a decision tree

Example 2: Decision Tree for Machine Learning

A decision tree shows you all of the possible outcomes of a set of choices. It starts off with a single node or outcome, which branches out into two or more possible outcomes. These will form another node, and more outcomes may branch out from those.

How to create a decision tree

Part 4: Conclusion

According to this article, there are mainly three parts to illustrate what is a decision tree, to tell you how to create a decision tree easily, and to show you some decision tree examples.

EdrawMax is an easiest all-in-one diagramming tool, you can create decision trees and any other type diagrams with ease! With ready-made decision tree symbols and cliparts, making decision trees could be as simple as possible. Also, it supports to export your work in multiple formats and share your work with others. Get started to create your decision trees now!

How to create a decision tree

How to create a decision tree in Microsoft Word by utilizing the shape library

  1. Shapes may be added to your Word document by selecting Insert > Illustrations > Shapes. There will be a drop-down menu shown. Make use of the form library to add shapes and lines to your decision tree as you construct it. Text can be entered into a text field. Select Insert > Text > Text box from the drop-down menu. Make a copy of your document.

Is there a decision tree template in Word?

Go to the Illustrations tab on the Insert tab and select SmartArt Graphics from the drop-down menu. Unfortunately, there isn’t a decision tree template available in Word at this time. The SmartArt Graphics from the Hierarchy template should be selected based on their suitability for your needs.

How do I create a decision flowchart in Word?

Select a flowchart shape from the drop-down menu on the Insert tab of the Ribbon to complete the process. After that, you may click and drag it to the location on the page that you want it to be. Continue to add shapes and lines to your flowchart until it is complete.

How do you create a decision tree?

What is the best way to design a decision tree?

  1. Begin with your overarching goal/”big choice” at the very beginning (root)
  2. Attach leaf nodes at the ends of your branches using your arrows.
  3. Calculate the likelihood of each choice point being successful. Assess the trade-off between risk and return.

How do you make a decision tree chart?

Making Decision Trees is a simple process.

  1. Step 1: Begin with your big decision.
  2. Step 2: Include all possible outcomes.
  3. Step 3: Draw triangles to indicate final outcomes.
  4. Step 4: Fill in the Branches with data or descriptions.
  5. Step 7: Make a decision!

Where can I make a decision tree?

Step 1: Begin with your big decision. ;Step 2: Include possible outcomes. ;Step 3: Draw triangles to indicate final outcomes. ;Step 4: Fill in the Branches with data or descriptions. ;Step 7: Make a decision!

Is there a flow chart template in Word?

A flowchart, also known as a flow chart, is a diagram that depicts the phases of an activity, process, or workflow. SmartArt templates are preconfigured in Microsoft Word and may be used to create a flowchart. These templates include aesthetically appealing basic flowchart templates with graphics, among other things.

How do I make a flow chart for free?

How to create a flowchart on the internet

  1. Online flowchart creation instructions.

How do you create a workflow diagram?

Creating a Workflow Diagram is a simple process.

  1. Step 1: Choose the procedure that you’ll be visualizing. Textually define the procedure by acquiring information in step two. Step three: Step 3: Create a diagram (on paper first, of course)
  2. Step 4: Distribute the diagram to the rest of the team. Step 5: Keep track of your progress, assess it, and make improvements.

What is decision tree example?

What is a Decision Tree, and how does it work? A decision tree is a form of probability tree that is particularly specialized in that it allows you to make a choice regarding a certain type of procedure. It is possible, for example, that you will wish to pick between manufacturing item A and item B, or between investing in option 1, option 2, or option 3.

How do you create a fault tree analysis in Word?

The Fundamental Steps in Creating a Fault Tree

  1. Go to the File menu, pick New, then Business Diagram, then Fault Tree Analysis, and then select a template from the pre-made samples that you prefer.
  2. Using the Event shape from the library pane of Fault Tree Analysis Shapes, drag it to the top of the canvas.

by Jessica Reed / in Computers & electronics

A decision tree can help you examine all possible options when faced with a hard choice or decision such as choosing the best option for your company. Microsoft Word provides a simple way to create a professional looking decision tree to print off for consideration. Whether you have Microsoft Word 2007 or an older version of the software, you can still create a decision tree in less than an hour using a few drawing tools.

Open a new Word document. If the Clip art menu isn’t visible, click “Tools,” “Toolbars,” and then “Drawing” from the list that appears beside “Toolbars.” The drawing toolbar should appear either at the bottom or to the left side of your Word document.

Click the “AutoShapes” button and choose a circle or a square, whichever you think would best fit your decision tree. For more room, create the chart running vertically instead of horizontally.

  • A decision tree can help you examine all possible options when faced with a hard choice or decision such as choosing the best option for your company.
  • Click the “AutoShapes” button and choose a circle or a square, whichever you think would best fit your decision tree.

Drag the tool to create the circle or square that will serve as your starting point. In it, you’ll state the decision or problem you’re trying to solve. Next, click the “Line” tool and draw a line extending down from your main circle or square for each possible choice or decision you can make. Draw smaller circles or squares at the end of each line and more lines out from these representing more choices. Continue this to map out your decision tree.

  • Drag the tool to create the circle or square that will serve as your starting point.
  • Next, click the “Line” tool and draw a line extending down from your main circle or square for each possible choice or decision you can make.

Click the text box button, which shows a large “A” in front of some lines. Click on one of the circles or squares in your diagram and drag your cursor to create a box inside this part of your chart. Type the required text into the box. Repeat this to fill out the rest of the diagram. If you get confused about what goes in what box, fill out the text after you create each box instead of creating the entire decision tree before adding the text.

Open a new document in Word. Several options are available for drawing a decision tree, but the easiest way is to use SmartArt.

Click the “Insert” tab and choose “SmartArt.” Different graphic selections will appear. Examine your options to find one that works best for you. A good choice for a decision tree is the “Radial List” found halfway down the choices under “Relationship” category. Each bubble can represent a different decision and the bubbles branching off from them can show possible results or choices.

  • Open a new document in Word.
  • A good choice for a decision tree is the “Radial List” found halfway down the choices under “Relationship” category.

Click the graphic you want, such as the Radial List, and click “OK.” The graphic should appear onscreen. Click the different bubbles to insert new text into them. Press “Enter” after the last text bubble to create a new one. Save or print your work when you’re finished.

You can also choose to draw the decision tree by hand in Word 2007. Click “Insert” and choose “Shapes.” Then choose the shapes you need, such as boxes to represent different decisions and lines to connect various choices, and drag them onto the screen. Rearrange and add text as necessary.

01.28.20 • #PowerPointTip #Chart #Visualization


  • Contents

1. Download a free Template

Creating your own flowchart in PowerPoint is a little bit of work. But if you are in a hurry or simply not in a creative mood, you can download on of the following templates we designed specially for you. If you want, you can of course modify and adjust them to your needs (e.g. remove or add branches and boxes).

Project flowchart PowerPoint template

How to create a decision tree

Basic flowchart PowerPoint template

How to create a decision tree

Pastel decision tree PowerPoint template

How to create a decision tree

2. Create a Flowchart or Decision Tree on your own

As mentioned before, you can create your own individual flowchart by following a few steps. Here’s how to do it:

1. Plan your diagram

This might sound strange or even boring, but is in fact extremely helpful and saves a lot of time. Before you even start, take a minute to think about your diagram and plan it out: If it is just a small one with only a few branches, it’s usually enough to visualize it in your head before starting to draw it in PowerPoint. If you have a more complicated flowchart however, with many branches and possible results, I strongly recommend creating a quick sketch with a pen on paper to make sure you have a clear image of what you want your diagram to show.

2. Choose and place your boxes

Once you know exactly how your decision tree should look like, it’s time to open up PowerPoint and start creating shapes! To do so, go to the “Insert” tab and choose the shape you want your boxes to have. In our tutorial, we used the rectangle with round corners, but feel free to use any shape you want.

How to create a decision tree

Draw the first shape and adjust it as you like. You can change the size (by dragging on the sides/edges) and the design in the Shape Format tab.

How to create a decision tree

Once you’re satisfied with your base shape, copy it by selecting it and then pressing either CTRL+C or right click > Copy. By pressing either CTRL+V or right click > Paste, you can paste the shape to your slide. Do this until you have the amount of shapes you need for your flowchart. (In our example, that would be 7 times).Align your boxes. Drag them where you want them to be placed. PowerPoint helps you with the symmetry by showing the spacing between objects.

How to create a decision tree

Now, put text boxes into the shapes. You can do so by going to the Insert tab again and then clicking “Text Box”. Draw it on your slide and place it directly over one of your created shapes. You can of course change the font size and style. Once you typed in your first text, you can simply copy that text box, paste it as often as you need and place it over the shapes.

How to create a decision tree

Place the branches

Now the only thing that’s left to do is to connect the boxes with the branches. Again, go to Insert > Shapes and choose the shape you want. I recommend using arrows or simple lines. Draw it on your slide (between the boxes you want to connect).

How to create a decision tree

Repeat that for all the boxes. Connect them with branches according to the sketch you made before. If the lines are on top of the boxes like shown below, that doesn’t matter – we’ll fix that in a minute.

How to create a decision tree

Once your branches are in place, it is time to select them all. Do so by clicking on each one individually while holding CTRL. The, go to the Shape Format Tab, Click Send Backward > Send to back. Your branches should now be behind the boxes. You can also format the branches by selecting a different shape fill and/or outline.

How to create a decision tree

Make any last adjustments (e.g. rearranging the arrows,…) until you’re satisfied with the result.

How to create a decision tree

Use the SlideLizard CREATOR to manage the slides of your presentation via a central library. With just one click, you can change colours, images or logos in all your presentations. This way, everyone can always present the most up-to-date version. In addition, the global search allows you to find slides as quickly as possible across the company.

3. Useful Keyboard Shortcuts

Shortcut Action
CTRL + C Copy an element or text
CTRL + V Paste a previously copied element or text
CTRL + Z Undo an action
CTRL + Y Redo an action

How do I create a flowchart in PowerPoint?

First plan how your flowchart should look. Then select the shape you want your boxes to have in the “Insert” tab in PowerPoint. Draw the first shape and then copy it as many times as you need it. Place them and then put text boxes into the shapes. After that, you only have to connect the boxes with branches by selecting a suitable shape for them again. In our blog you can find a more detailed tutorial on how to create flowcharts.

Where can I download templates for a flowchart in PowerPoint?

We have created some flowchart templates in PowerPoint, which you can download and use for free here.