This guide shows how to fit a dose-response standard curve in BioRender Graphing and use it to interpolate unknown samples when the standards and unknowns sit in the same data column, as in a plate-reader export. You will also graph the interpolated values.
Step-by-Step Guide
Step 1: Upload your data
Open a new Graphing file and click Choose a file (1), or drag your file in. Supported formats are .csv, .xlsx, .xls, .prism and .pzfx, up to 50MB.
Step 2: Choose the dataset to import
If your workbook contains several datasets, tick the one you need (1) and click Import data (2).
Step 3: Check the data layout
This example dataset is similar to the ELISA drug screen sample data available in BioRender Graphing, and is arranged as a long-format output from a plate reader. Standards have a known concentration in conc_std (1). Unknowns have only a response in the same value column, plus a treatment label (2).
Step 4: Create a variable for the OD values of the standards
- In the Variables panel, click + to add a variable. Name it, for example ODval_std
- Click Select cells.
- Click "Save".
Step 5: Select the standards’ cells
- Drag over the standards’ response cells.
- The range appears in the box (in this example, C2:C25).
- Click "Done".
- "Save".
Step 6: Create a variable for the OD values of the unknown wells
- Add a second variable (for example ODval_unk).
- With the unknowns’ range (example, C26:C97).
- Click "Save".
Step 7: Confirm both variables
ODval_std and ODval_unk now appear in the "Variables" panel (1).
Step 8: Create a new graph
Under Graphs, click "Create new" (1).
Step 9: Choose Dose response curve
Open the Graph type list and select "Dose response curve" (1).
Step 10: Assign the variables
- Set X-axis variable to the concentration, conc_std.
- Set Y-axis variable to the standards’ response, ODval_std.
- Then click "Continue".
Step 11 (optional): Use a log X axis
- Click the x-axis
- Set "Axis scale" to Log10
- Alternatively, ask "Quick edit" to set the bottom axis to log base 10.
Step 12: Run a new analysis
In the left panel, click Run new analysis (1).
Step 13: Choose the regression
- Set Analysis type to Nonlinear Regression and Regression Type to "Dose-Response Regression".
- Under Dose response model, choose "Stimulation" if the response rises with dose, or "Inhibition" if it falls.
Step 14: Show the interpolation options
Scroll to Step 3 - Follow-up analyses and click Show interpolation options (1).
Step 15: Select the unknowns
- Open Values to interpolate.
- Pick the variable that holds your unknowns.
Step 16: Choose the direction and run
- Confirm the variable.
- Under Interpolation direction, choose Find X from Y to get concentrations from responses.
- Alternatively, find Y from X to predict responses from concentrations.
- Interpolation is now ticked under "Follow-up analyses".
- Click "Run analysis".
Step 17: View the fitted curve
- Each analysis is saved under Reports (3).
- Under Show analysis (1), select the Dose-Response Regression you just ran, and the fitted curve will appear on the graph.
- Optionally, toggle Best-fit curve, 95% Confidence interval, etc (2).
Step 18: Open the report
- Click the Dose Response Regression report under Reports. It lists the best-fit values (EC50), curve coefficients (Top, Bottom, Hill slope) and goodness of fit.
- Followed will be the interpolated values for your unknowns.
Step 19: Read the interpolated values
- Input is your measured value and Predicted is the interpolated value, shown with its 95% CI.
- “Within 2% of a plateau” means the result is poorly determined.
- NA with “No result can be calculated for this value” means the input falls outside the curve’s Top and Bottom (3).
- Click Add as new dataset to treat this table as a dataset for further analysis.
Step 20: Open the new dataset
- A new tab with the interpolated values appears at the bottom of the data view. You can copy-paste the treatment labels of the unknowns from the original data into this dataset under the Sample heading so that they carry relevant labels.
- Then click "Detect variables" to assign variables to each column.
Step 21: Check the detected variables
Sample, Input, Predicted, 95% CI and Notes are now variables.
Step 22: Graph the interpolated values
Create a new graph.
- Select the interpolated dataset.
- Select a graph type such as Mean/median line.
- Set X-axis variable to Sample.
- Set Y-axis variable to Predicted.
- Click "Continue".
Step 23 (optional): Exclude an unreliable value
- To remove a value that is poorly determined, such as the 192.19 flagged within 2% of a plateau, right-click it in "Displayed" data.
- Choose "Exclude".
Step 24: Check the updated graph
- The y-axis rescales.
- The value is greyed out.
Troubleshooting common issues
The result displays "NA" with the message "No result can be calculated for this value"
This occurs when the input value falls above the fitted Top or below the fitted Bottom of the standard curve.
For example, values of 2.1 or 0.02 fall outside a curve with a fitted Top of 2.04 and Bottom of 0.08.
To resolve this:
- Check that your measurements are correct.
- If needed, rerun the sample at a dilution that produces a measurement within the standard curve's range.
The result displays "Within 2% of a plateau"
Values close to the Top or Bottom of the standard curve are less reliable and may produce extreme results or a wide or missing 95% confidence interval (CI).
To resolve this:
- Use samples that fall within the steeper, middle portion of the standard curve whenever possible.
- Alternatively, exclude the affected value from your analysis (see Step 23).
Your unknowns variable doesn't appear under "Values to interpolate"
Variables already assigned to the graph axes, such as conc_std and ODval_std, won't appear in the "Values to interpolate" list.
To resolve this:
- Create your unknowns as a separate variable by following Steps 4 to 6.
- Return to "Values to interpolate" and select your newly created variable.
A statistical test displays "Category 'drug_2' has 1 samples, needs at least 2"
This error occurs when a group doesn't have enough valid results to perform the statistical test.
For example, if two of the three drug_2 results are NA, only one valid value remains.
To resolve this:
- Review the group for NA results.
- If the group has fewer than two valid values, deselect it under "Select categorical groups" before running the statistical test again.
Frequently asked questions
Why create separate variables for standards and unknowns?
Both sit in the same value column. Separate variables tell Graphing which cells fit the curve and which cells to interpolate.
When should I use Find X from Y versus Find Y from X?
Use Find X from Y to estimate a concentration from a measured response. Use Find Y from X to predict a response from a known concentration.
Which dose response model should I choose?
ELISA kits generally recommend a 4PL dose-response model to fit standard curves. If your OD values for the standard curve all fall within the linear range of response, it would be just as valid to interpolate from a linear model using a similar workflow to that described above.
Was this article helpful?
Articles in this section
- BioRender Graphing: Available chart types and analyses
- Statistical tests in BioRender Graphing: methods, assumption checks, and R packages
- Statistical analysis: Available tests and how to run them
- Running statistical analyses in BioRender Graphing
- How BioRender recommends the right statistical test for your data
- Understanding outlier detection (ROUT method)
- How to plot and analyze continuous (XY) data in BioRender Graphing
- How to fit a standard curve and interpolate unknowns from plate data
- Creating Heatmaps and Well Plate Heatmaps in BioRender Graphing