只允许用户投赞成和反对票,请问怎样将结果用5星显示出来?

wfyfngu 2008-11-03 01:34:54
5星大家知道吧
比如 Windows Media Player里面的音乐喜爱度分级,有1~5 5个级别
中文名不知道叫什么,英文名是 Rating

现在我的情况是,在只允许用户选择 赞成 和 反对 的情况下
怎样对这个被评论的资源根据用户的投票结果用5星图示表现出来


如果在我限制的条件下不能实现
大家有什么好的方法也可以推荐一下。

不胜感激。


...全文
187 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
wfyfngu 2008-11-04
  • 打赏
  • 举报
回复
谢谢各位的回复
决定在第一个版本采用 journeydj 的方法
再次谢谢各位的参与
今天下班前结贴。
lovehongyun 2008-11-03
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 wfyfngu 的回复:]
引用 20 楼 lovehongyun 的回复:
很奇怪.你的评星到底是按流量,关注度算还是按 赞成的多少算?



就是一个资源的 Rating
Rating 的结果用星星来表示
最好星星的数量能够反映资源的影响度
具体的需求请看完在 12楼 的回复
[/Quote]

lz的说法本身就矛盾.
我觉得按你所说的投票的赞成票数没什么用,你要反应资源的影响度的话.只按投票总数算就好了,我同意24楼的说法

bjwtufv 2008-11-03
  • 打赏
  • 举报
回复
支持+反对

支持/支持+反对
0-10 一星
。。。。。
xiaoks668 2008-11-03
  • 打赏
  • 举报
回复
关键你要搞清楚5星代表什么含义,如果是代表关注程度,那就是赞成票+反对票,然后将这个数值5等分。
但是5星在一般网民心中应该代表一个好坏程度,而不是量的多少。
如果你既想体现量的多少,又想体现质的好坏,估计要改进你的程序了。
你可以参考下这种评价方式:
http://www.10000free.com/Free_Hosting_byethost.aspx
sunxw18 2008-11-03
  • 打赏
  • 举报
回复
自己定义一个算法!根据赞成和反对的比例确定星星的个数!
gongsun 2008-11-03
  • 打赏
  • 举报
回复
呵呵,算法的合理性,楼主自己定吧。方法很多...

如果非的把赞成与反对联系起来,可以以一个为主,另一个为辅。

用赞成确定主值,反对确定偏差值。

精确度自己定。
jimu8130 2008-11-03
  • 打赏
  • 举报
回复
lz可以按照热门度(投票人数,不管支持还是反对),支持度(支持人比率),反对度(反对人比率,该项目可以忽略)来评星咯
并不需要把所有的评级放到一个项目上面来。
journeydj 2008-11-03
  • 打赏
  • 举报
回复
为什么要把不赞成的票数和星关联起来啊??????
只算赞成的我这么写不是挺好的吗?
(赞成票数/总票数)*5
比如 (40/100)*5 就是两颗星
wfyfngu 2008-11-03
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 lovehongyun 的回复:]
很奇怪.你的评星到底是按流量,关注度算还是按 赞成的多少算?

[/Quote]

就是一个资源的 Rating
Rating 的结果用星星来表示
最好星星的数量能够反映资源的影响度
具体的需求请看完在 12楼 的回复
wfyfngu 2008-11-03
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 qinhl99 的回复:]
算法上没有什么难的,难得就是看怎么定义它合理些吧
[/Quote]

能不能贴出来
让我瞻仰瞻仰
lovehongyun 2008-11-03
  • 打赏
  • 举报
回复
很奇怪.你的评星到底是按流量,关注度算还是按 赞成的多少算?
mjjzg 2008-11-03
  • 打赏
  • 举报
回复
向PHY学习.....dddddd
qinhl99 2008-11-03
  • 打赏
  • 举报
回复
算法上没有什么难的,难得就是看怎么定义它合理些吧
brallow 2008-11-03
  • 打赏
  • 举报
回复
我这里是没有成熟的算法,单纯从使用的角度上面已经给出了一些算法是合适的。
依我看从应用的角度出发,你的首要目标现在是弄出一个算法,然后再慢慢来优化这个算法。

另外你也可以搜索一下看论文中有无比较好的:)学术研究上这些应该是比较多的。
wfyfngu 2008-11-03
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 journeydj 的回复:]
(赞成票数/总票数)*5
比如 (40/100)*5 就是两颗星

[/Quote]

这个算法可以满足要求
如果找不到更好的能够满足我在 7楼 和 12楼 提出的问题,这个可以考虑使用,
多谢了。
wfyfngu 2008-11-03
  • 打赏
  • 举报
回复
TO: phy

我现在无从下手,你干脆给我个成熟的算法得了。不胜感激!
chenguang79 2008-11-03
  • 打赏
  • 举报
回复
楼主到底是显示喜欢程度还是访问次数的星级啊。
如果是喜欢程度,哪不管你反对多少,都是不喜欢,你可以为负数不加星而加一个骷髅。
如果楼主想的是访问的多少,哪就把喜欢与不喜欢全加上再进行计算
journeydj 2008-11-03
  • 打赏
  • 举报
回复
(赞成票数/总票数)*5
比如 (40/100)*5 就是两颗星
wfyfngu 2008-11-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 phy 的回复:]
关键是你得到一个1-5(0-5)之间的整数,至于你如何算出来,那不就随便你?
[/Quote]

这个容易实现
但问题就像我在 7 楼描述的那样
这样分级会不会太机械化

比如情况1:
A资源的投票结果为 (+1000) + (-1000) = 0
B资源的投票结果为 (+100) + (-100) = 0
很明显,A资源更受欢迎,可它们却拥有一样数量的星星?这样合理吗?

情况2:
A资源的投票结果为 (+1000) + (-2000) = -1000
B资源的投票结果为 (+200) + (-100) = 100
这种情况下,A资源带来的轰动效应要比B大的多,星星却不如B资源多,这样合理吗?

请赐教。
w161134025 2008-11-03
  • 打赏
  • 举报
回复
有过这样的想法,帮你顶
加载更多回复(10)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧