作者MMAXo (充满自信与信任)
看板C_Sharp
标题[问题] MS Chart control
时间Thu Dec 25 15:28:14 2008
想问一下 chart 的更新问题..
我的图表是每产生一个值就要绘至 chart
可是 x 轴有上限..在超过上限时会归零重绘 [我的需求]..
可是目前有两个问题:
Q1. X轴大小第一次可以直接给吗?
目前我的做法是先加入 10个值为0的点..
用来维持chart的x个数.
Q2.更新 X 的 Y 值时..
如果比先前点的 y 还大..那 chart 会自动重画..
可是如果比较小..反而不会画..
这个是目前最大的问题....
下面贴上我的测试程式码
using System.Windows.Forms.DataVisualization.Charting;
// X 座标
int xValue = 0;
// Y 值..本来设定random 但是发现问题,直接从1000每次减10
double myValue = 1000;
Random random = new Random((int)DateTime.Now.Ticks);
private void btn_AddNewPoint_Click(object sender, EventArgs e)
{
// 为了维持 size
if (Chart1.Series[0].Points.Count == 0)
{
AddZeroPoints(10);
}
// x 超过时归0
if (xValue == 10)
{
xValue = 0;
}
Chart1.Series[0].Points.AddXY(xValue,myValue);
xValue++;
myValue -= 10;
}
private void AddZeroPoints(int limit)
{
for (int i = 0; i < limit; i++)
{
Chart1.Series[0].Points.AddXY(i, 0);
}
}
--
▲ ▲▲▲
▄▇▃▂▁ ▁▂▃▇▄
▃▆
◢ ■ ◣▆▃
╦ ╗█▇▆▃▁▄ ▄▁▃▅▆▇╔╗
◢█
█◣∥◢█▇█
◣ ║ ║ ╦ ╔╗ ╦╗ ╦ ╔ ╗
█◣▲ ▼▼
▼▼ ▲◢█ ║ ║ ║ ╠╣ ╠ ╗ ║ ║ ║
◥█◤◥▲
▲▲◤◥█◤ ║ ║ ╩ ╩ ╩ ╩ ╝ ╩ ╝╚ ╝
ψyzelly ◤ ◥ ╩ ╝▁▂▃▄▆▄ ▄ ▄▃▂▁╚╝
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.120.3.16
※ 编辑: MMAXo 来自: 140.112.31.87 (12/26 16:30)