display pdf in wpf c# : Rotate one page in pdf reader software application cloud windows html winforms class 68824-part540

Chapter 7
Creating Interactive Charts
IN THIS CHAPTER
Introducing the concept of interactive charts
Creating a self-expanding chart—a chart that updates automatically when
data is added or deleted
Using a scrollbar to specify the data in a series
Using a drop-down list to choose a beginning point and an end point for
a series
Plotting the last ndata points in a series
Plotting every nth data point in a series
Plotting a series based on the active cell
Using a check box or a drop-down list to select a series to plot
T
HE TERM INTERACTIVE CHART
,
as used in this book, refers to a chart that changes
automatically, based on the worksheet environment. In a sense, all charts are inter-
active because charts series are linked to ranges, and the chart updates automati-
cally when the data is changed. This is notthe type of interactivity covered in this
chapter.
Introducing Interactive Charts
If you create spreadsheets that are used by others, you’ll probably find several useful
techniques in this chapter. Many of these examples have a single goal: to make it
easier for users (especially novice users) to deal with a workbook that contains charts.
A few examples of interactive charts include:
 A chart that updates itself to use newly added data
 A chart that updates itself when data is deleted
 A chart that limits the amount of data displayed in a series (for example,
the last 12 data points)
209
Rotate one page in pdf reader - rotate PDF page permanently in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Empower Users to Change the Rotation Angle of PDF File Page Using C#
pdf rotate pages and save; how to change page orientation in pdf document
Rotate one page in pdf reader - VB.NET PDF Page Rotate Library: rotate PDF page permanently in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
PDF Document Page Rotation in Visual Basic .NET Class Application
rotate one page in pdf; rotate pdf pages by degrees
A chart that displays a series based on a value entered into a cell or an
item chosen from a drop-down list.
A chart that displays a series based on the location of the active cell
This chapter provides the information you need to create several types of charts
that update automatically based on information contained in the workbook. You’ll
also discover how to use dialog box controls (such as check boxes and drop-down
lists) to make your charts interactive.
Another way to create an interactive chart is to use a pivot chart.Refer to
Chapter 9 for information about creating and using pivot charts.
All the examples discussed in this chapter are available on the companion
CD-ROM.
Hands-On: Creating a 
Self-Expanding Chart
One of the most common questions related to charting is, “How can I create a chart
that will expand automatically when I add new data to the worksheet?”
To understand this issue, examine Figure 7-1, which shows a worksheet set up to
store sales information that is updated daily. The chart displays all the data in the
worksheet. When new data is entered, the chart series must be expanded to include
the new data. On the other hand, if data is deleted, the chart series should also be
contracted to exclude the deleted cells.
Wouldn’t it be nice if the chart series would expand and contract automatically?
Excel doesn’t provide a direct way to create such a self-expanding chart. But, as
you’ll see, it’s certainly possible—if you’re willing to do a little up-front work.
Chapter 3 describes several ways to change the source data used in a chart
series.Although none of those techniques is particularly difficult, , each
requires manual intervention.Creating a self-expanding chart makes the
process completely automatic.
210
Part II: Mastering Charts
VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
If you are looking for a solution to conveniently delete one page from your PDF document, you can use this VB.NET PDF Library, which supports a variety of PDF
pdf expert rotate page; how to reverse page order in pdf
C# PDF File Merge Library: Merge, append PDF files in C#.net, ASP.
C# developers can easily merge and append one PDF document to document imaging toolkit, also offers other advanced PDF document page processing and
how to rotate a pdf page in reader; pdf save rotated pages
Figure 7-1: If this were a self-expanding chart, it would update 
automatically when new data is entered.
One option, of course, is to specify a larger-than-required range for the data
series. Figure 7-2 shows an example in which the data series includes empty cells
that will eventually be filled. The result is a lopsided chart that displays lots of
empty space. In the majority of situations, this solution is not satisfactory.
Figure 7-2: Specifying blank cells in the data range is usually not a 
viable solution.
As an introduction to the world of interactive charts, this section presents a
hands-on, step-by-step example. You’ll create a standard chart and then make the
changes necessary to make the chart expand automatically when new data is
added, and contract when data is deleted.
The example makes use of a simple worksheet that has dates in column A and
sales amounts in column B. The assumption is that a new date and sales figure are
each added daily, and the chart should display all the data.
Chapter 7: Creating Interactive Charts
211
VB.NET PDF File Merge Library: Merge, append PDF files in vb.net
all. This guiding page will help you merge two or more PDF documents into a single one in a Visual Basic .NET imaging application.
rotate pages in pdf; saving rotated pdf pages
VB.NET PDF Annotate Library: Draw, edit PDF annotation, markups in
to display it. Thus, PDFPage, derived from REPage, is a programming abstraction for representing one PDF page. Annotating Process.
pdf reverse page order preview; pdf rotate single page
Creating the chart
The first step is to create a standard chart, using the data that currently exists.
Figure 7-1, presented earlier, shows the data and a column chart created from the
data. The chart contains a single series and its SERIES formula is as follows:
=SERIES(Sheet1!$B$1,Sheet1!$A$2:$A$11,Sheet1!$B$2:$B$11,1)
This SERIES formula specifies that:
 The series name is in cell B1.
 The category labels are in A2:A11.
 The values are in B2:B11.
So far, this is just a common chart. If you add a new date and value, the chart
will not display the new data. But that will soon change.
Creating named formulas
In this step, you create two named formulas. The names will eventually serve as
arguments in the SERIES formula. In case you’re not familiar with the concept of a
named formula, it is explained later in this section. To create the named formulas:
1. Select InsertNameDefine to bring up the Define Name dialog box.
2. In the Names in workbook field, enter Date. In the Refers to field, enter
this formula:
=OFFSET(Sheet1!$A$2,0,0,COUNTA(Sheet1!$A:$A)-1,1)
3. Click Add to create the formula named Date.
Notice that the OFFSET function refers to the first category label (cell A2)
and uses the COUNTA function to determine the number of labels in the
column. Because column A has a heading in row 1, the formula subtracts
1 from the number.
4. Type Salesin the Names in workbook field. Enter this formula in the
Refers to field:
=OFFSET(Sheet1!$B$2,0,0,COUNTA(Sheet1!$B:$B)-1,1)
In this case, the OFFSET function refers to the first data point (cell B2).
Again, the COUNTA function is used to get the number of data points, and
it is adjusted to account for the label in cell B1.
5. Click Add to create the formula named Sales.
6. Click Close to close the Define Name dialog box.
212
Part II: Mastering Charts
C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net
Extract PDF Pages, Copy Pages from One PDF File and Paste into Others in C#.NET Program. Free PDF document processing SDK supports PDF page extraction, copying
rotate pages in pdf expert; rotate pdf pages on ipad
C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
Using RasterEdge Visual C# .NET PDF page deletion component, developers can easily select one or more PDF pages and delete it/them in both .NET web and Windows
reverse pdf page order online; rotate single page in pdf
After you perform these steps, the workbook contains two new names, Date
andSales.
Modifying the series
The final step is to modify the chart so that it makes use of the two new names
rather than the “hard-coded” range references.
1. Activate the chart and select ChartSource Data to bring up the Source
Data dialog box.
2. In the Values field, enter Sheet1!Sales.
3. In the Category (x) axis labels field, enter Sheet1!Dates.
4. Verify that the dialog box looks like Figure 7-3 and then click OK.
Figure 7-3: Specifying the named formulas 
in the Source Data dialog box
In Steps 2 and 3, note that the name was preceded by the worksheet name and
an exclamation point. Because named formulas are workbook-level names (as
opposed to sheet-level names), you should (technically) enter the workbookname,
an exclamation point, and the name. However, Excel is very accommodating in this
regard, and changes it for you. If you access the Source Data dialog box again,
you’ll discover that Excel substituted the workbook’s name for the sheet reference
you entered:
=daily.xls!Sales
Chapter 7: Creating Interactive Charts
213
VB.NET PDF copy, paste image library: copy, paste, cut PDF images
be saved after cutting, copying and pasting into PDF page. existing PDF file and paste it into another one. Copy, paste and cut PDF image while preview without
reverse page order pdf; rotate a pdf page
C# PDF: C# Code to Process PDF Document Page Using C#.NET PDF
for developers on how to rotate PDF page in different two different PDF documents into one large PDF C# PDF Page Processing: Split PDF Document - C#.NET PDF
rotate pdf pages and save; rotate individual pages in pdf
Bottom line? When using these named formulas, you can precede the name with
either the worksheet name or the workbook name (I find it easier to use the work-
sheet name). But keep in mind that if the sheet name or workbook name includes a
space character, you must enclose it in single quotation marks, like this:
=’daily sales.xls’!Sales
or
=’sales data’!sales
For more information about names, refer to the sidebar “How Excel Handles
Names.”
An alternative to using the Source Data dialog box is to edit the chart’s SERIES
formula directly.
214
Part II: Mastering Charts
How Excel Handles Names
Excel supports two types of names: workbook-level names and worksheet-level
names. The scope of a workbook-level name is the entire workbook. Normally, when
you create a name for a cell or range, that name can be used in any worksheet.
You can also create sheet-level names. A sheet-level name incorporates the sheet name
as part of its name. For example, Sheet1!Datais a sheet-level name. When you create
this name, you can use it in formulas in Sheet1 without the sheet qualifier. For example:
=Data*4
But if you enter this formula in a different worksheet, Excel will not recognize the
name unless you fully qualify it:
=Sheet1!Data*4
Sheet-level names are useful because they enable you to use the same name on
different worksheets. For example, you might create sheet-level names such as
Sheet1!Interest, Sheet2!Interest, and Sheet3!Interest. Each name refers to a cell on its
own sheet. A formula that uses the name Interestuses the definition for its own sheet.
The named formulas used in this chapter are workbook-level names because they are
not preceded by a sheet name. But when you enter a name in a field in the Source
Data dialog box, Excel (for some reason) requires that you qualify the name with
either the sheet name or the workbook name.
Testing it
To test the results of your efforts, enter new data in columns A and B, or delete data
from the bottom of the columns. If you performed the preceding steps correctly,
thechart will update automatically. If you receive an error message or the chart
doesn’t update itself, review the preceding steps carefully. This method doeswork!
Understanding how it works
Many people use this self-expanding chart technique without fully understanding
how it works. There’s certainly nothing wrong with that. If you go through the
hands-on exercise described previously, you should be able to adapt the procedures
to your own charts. But understanding howit works will make it possible to go
beyond the basic concept and create more powerful types of dynamic charts.
ABOUT NAMED FORMULAS
Many of the interactive chart techniques described in this chapter take advantage
of a powerful feature called named formulas. You’re probably familiar with the
concept of named cells and ranges. But did you know that naming cells and ranges
is really a misnomer? When you create a name for a range, you are really creating
a named formula.
When you work with the Define Name dialog box, the Refers to field contains
the formula, and the Names in workbook field contains the formula’s name. You’ll
find that the contents of the Refers to field always begin with an equal sign—a sure
sign that it’s a formula.
Unlike a normal formula, a named formula doesn’t exist in a cell. Rather, it
exists in Excel’s memory and does not have a cell address. But you can access the
result of a named formula by referring to its name, either in a standard formula or
in a chart’s SERIES formula.
After defining the two named formulas, Excel evaluates these formulas every
time the worksheet is calculated. But these named formulas aren’t used in any cells,
so there is no visible effect of creating these named formulas—until you use them
to define the chart series.
To get a better handle on named formulas, use the Define Name dialog box to
create the following formula, and name it Sum12Cells.
=SUM($A$1:$A$12)
After you’ve created the named formula, enter the following formula into any cell:
=Sum12Cells
This formula will return the sum of A1:A12.
Chapter 7: Creating Interactive Charts
215
Normally,cell and range addresses used in named formulas are absolute
addresses—the row and column references are preceded by a dollar sign.If
you use standard relative addresses,the result returned by the named for-
mula will vary,depending on the location of the cell pointer.As you’ll see
later in this chapter,you can use this to your benefit (see “Plotting a Series
Based on the Active Cell”).
ABOUT THE OFFSET FUNCTION
The key to mastering self-expanding charts is understanding the OFFSET function.
This function returns a range that is “offset” from a specified reference cell.
Arguments for the OFFSET function let you specify the distance from the reference
cell and the dimensions of the range (the number of rows and columns).
The OFFSET function has five arguments, as follows:
 reference:The first argument for the OFFSET function is essentially the
“anchor” cell, used by the second and third argument. 
 rows:This argument indicates how many rows to move from the reference
address to begin the range. 
 cols:This argument indicates how many columns to move from the refer-
ence address to begin the range. 
 height:This argument indicates the number of rows to be included in the
range. 
 width:The final argument indicates the number of columns to be included
in the range.
If the columns used for the data contain any other entries,COUNTA will
return an incorrect value.To keep things simple,don’t put any other data in
the column.If the column contains additional information,you’ll need to
adjust the heightargument in the COUNTA function.
Recall that the named formula Saleswas defined as
=OFFSET(Sheet1!$B$2,0,0,COUNTA(Sheet1!$B:$B)-1,1)
If there are 11 entries in column B, the COUNTA function returns 11. This result
is adjusted by one to account for the column heading. Therefore, the named for-
mula can be expressed as
=OFFSET(Sheet1!$B$2,0,0,10,1)
216
Part II: Mastering Charts
This formula uses cell B2 as the anchor cell and returns a reference to the range
that is
 Offset from cell B2 by 0 rows (second argument, rows)
 Offset from cell B2 by 0 columns (third argument, cols)
 Ten cells high (fourth argument, height)
 One cell wide (fifth argument, width)
In other words, the OFFSET function returns a reference to range B2:B11, and
this is the range used by the chart series. When a new data point is added, the
OFFSET function returns a reference to range B2:B12.
Subsequent examples in this chapter use the same basic concept but vary in the
arguments supplied to the OFFSET function.
To keep things simple,the charts in this chapter make use of a single data
series.However,these techniques can be applied to charts with any number
of data series.You will,however,have to make the necessary adjustments for
each series.
Controlling a Series with a Scroll Bar
The example in this section demonstrates another type of interactivity. Figure 7-4
shows a chart that uses a Scroll Bar control to specify the number of months (from
1 to 12) to display.
Figure 7-4: The scroll bar at the top of the chart controls how many months 
are displayed.
Chapter 7: Creating Interactive Charts
217
Creating the chart
Refer to Figure 7-4 and use the data in columns A:B to create a chart (the example
uses standard 3-D column chart). Because the number of data points will vary, it’s
a good idea to turn off automatic scaling for the value axis. Set the Maximum scale
value to a large enough value to accommodate all the data. Doing this keeps the
value axis constant, regardless of the number of data points displayed.
Defining the names
This example uses several names, which are described in this section.
Cell D1 contains a value that determines the number of months displayed in the
chart. For convenience, this cell is named NumMonths.
In addition, the workbook has two named formulas, which are used in the chart’s
series. Monthsis defined as
=OFFSET(Sheet1!$A$2,0,0, NumMonths,1)
Balanceis defined as
=OFFSET(Sheet1!$B$2,0,0,NumMonths,1)
If you understand how the named formulas worked in the previous example, you
should have no problem understanding this variation. As you can see, the OFFSET
functions use NumMonths for their height argument. The result is that the
NumMonthscell controls how many data points are displayed in the chart.
Another approach,which is a bit simpler,is to define Balanceas an offset
from the Months s range.Using this approach,the definition for Balance
would be:
=OFFSET(Months,0,1)
As in the previous example, these two named formulas are then used for the cat-
egory labels and values range for the chart series. This is done by using the Series
tab of the Source Data dialog box. The net effect? Change the value in cell D1, and
the chart updates immediately.
Adding the Scroll Bar control
The Scroll Bar control isn’t really necessary, but it does add a touch of convenience.
Moving the scroll bar with the mouse is a bit easier than changing the value in
cellD1.
218
Part II: Mastering Charts
Documents you may be interested
Documents you may be interested